Application_Error已调用,但没有异常

Eri*_* J. 6 asp.net-mvc asp.net-mvc-4

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

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

MSDN状态 Application_Error

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

Server.GetLastError()状态的MSDN文档

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

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

Tom*_*mmy 2

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