2014-09-18 141 views
0

我使用asp.net mvc4如何处理异常

在我Global.asax.cs我有

  void Application_Error(object sender, EventArgs e) 
    { 
     //We clear the response 
     Response.Clear(); 




     { 

      Response.Redirect("~/Shared/_Error"); 
     } 

     //We clear the error 
     Server.ClearError(); 
    } 

这给了我一个很好的错误消息,为用户

,但我作为一个开发者我想看看关于例外的一些信息

我怎么能这么说?我可以使用简单的文件来存储这些信息吗?

+2

'Exception exc = Server.GetLastError();' – 2014-09-18 17:48:59

+0

记录有关错误的信息。异常(包括消息,堆栈跟踪,任何内部异常,自定义异常类的任何附加数据等),一些运行时上下文信息(例如用于调用功能的值)等。任何有用的信息。当然,你可以将它记录到一个文件中。或者一个数据库。或电子邮件。或任何数量的地方。有多种日志框架可以从中选择哪些可以帮助解决这个问题。 – David 2014-09-18 17:49:16

回答

3

可以使用提取的最后一个异常:

Exception exc = Server.GetLastError(); 

exc.ToString()应该给你你需要(及以上)的所有信息。您可以登录,它显示给用户,等

你也可以看看螺栓像ELMAH支持电子邮件通知,日志记录工具等

的更多信息,可以发现here

+0

ELMAH还支持查看例外历史记录的实时URL。必不可少! – 2014-09-18 18:02:30