我在测试数据库中运行了 ELMAH SQL 脚本(它创建了 ELmah_Error 表和 3 个存储过程),并使用 Nuget 在 MVC 应用程序中配置了 ELMAH。
我按照指定的方式修改了 web.config,并能够将异常记录到
我按照指定的方式修改了 web.config,并能够将异常记录到
http://mysite/elmah.axd
但是,我想将异常记录到Sql Server中。
我添加了以下类来实现这一功能。
public class ElmahHandleErrorAttribute : System.Web.Mvc.HandleErrorAttribute
{
public override void OnException(System.Web.Mvc.ExceptionContext context)
{
LogException(e);
}
private static void LogException(Exception e)
{
// Call to Database and insert the exception info
}
}
最后一步是:
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new ElmahHandleErrorAttribute ());
}
使用ELMAH记录所有异常的方法正确吗?还是我漏掉了什么?