asp.net-mvc – 清理MVC 3.0应用程序中抛出的所有错误的方法?

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – 清理MVC 3.0应用程序中抛出的所有错误的方法?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在建立一个MVC 3.0电子商务网站。我想避免在我的代码上粘贴try-catch块。

问题很简单 – 捕获我网站上抛出的所有错误的好策略是什么?我想知道他们所有的…所以我可以努力把这个计数值设置为0,一旦网站上线。我打算将每个错误写入记录器,并发送电子邮件

我已经做了一些关于在global.asax文件中捕获它的阅读,但我也读过它并没有得到它们。

任何人有任何建议或者可以指出我的方向好吗?

解决方法

解决这个问题的MVC方法是过滤器。如果您已经在MVC3上,全球过滤器是为您而设。有特殊类型的过滤器用于处理错误:HandleError过滤器。 This article描述了很多使用它。

您可以实现自己的过滤器并控制未处理异常的每个方面,例如:

public class HandleExceptionsAttribute : HandleErrorAttribute
{
    public override void OnException(ExceptionContext filterContext)
    {
        var expception = filterContext.Exception;

        // custom code here..
    }
}

最后,如果您想要存储和记录所有未处理的异常,那么ELMAH即ELMAH.MVC是最佳选择。使用NuGet package安装它,配置它,所有数据将从以下链接访问:

http://yourapp/admin/elmah/

我的建议是在Global.asax.cs中不要使用Application_Error这样的东西。

猜你在找的asp.Net相关文章