小编kew*_*guy的帖子

使用SQL SERVER 2008 R2的ELMAH for ASP.NET MVC 4

我在测试DB中运行了ELMAH sql脚本(它创建了ELmah_Error表和3个存储过程),并使用Nuget在MVC应用程序中配置了ELMAH.

我按照指定修改了web.config,我可以将异常记录到

 http://mysite/elmah.axd
Run Code Online (Sandbox Code Playgroud)

但是,我想将异常记录到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
    } 
}
Run Code Online (Sandbox Code Playgroud)

最后一步是:

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
    filters.Add(new ElmahHandleErrorAttribute ());
}
Run Code Online (Sandbox Code Playgroud)

这是使用ELMAH记录所有异常的正确方法还是我错过了什么?

sql-server asp.net-mvc elmah sql-server-2008-r2

7
推荐指数
1
解决办法
5615
查看次数