Application_Error已调用,但没有异常

时间:2012-07-27 06:39:19

标签: asp.net-mvc asp.net-mvc-4

在VS2010 SP1中调试我的MVC 4应用程序时,调用了Application_Error()处理程序,但Server.GetLastError()为空。

protected void Application_Error()
{
    var exception = Server.GetLastError();
    // exception is null.  How is that possible?
}

MSDN states Application_Error

  

如果在...应用程序中的任何位置发生未处理的异常,则会调用...您可以从GetLastError方法获取有关最新错误的信息。

Server.GetLastError()的MSDN文档声明

  

返回值:抛出的上一个异常。

我怎么可能处于调用Application_Error()Server.GetLastError()返回null的状态?

1 个答案:

答案 0 :(得分:2)

您是否在web.config中使用自定义错误处理?我相信如果浏览器发出重定向,之前的异常将会丢失。拿一个look at this answer,看看你的情况是否相似。