处理Global.asax中的一些错误

时间:2013-01-08 20:05:44

标签: asp.net-mvc-3 httpexception

我在.NET4和MVC3(razor)上有一个Web应用程序。

我想在Global.asax中处理我的应用程序错误。我创建了application_error函数。

我注意到并发现了一些错误。

当我尝试在行Response.Clear();上添加断点时,其中一个在Application_Error中返回此字符串,并且该错误是通用的。

如何找到代码或代码的一部分呢?

我的代码:

protected void Application_Error()
    {
        var exception = Server.GetLastError();
        var httpException = exception as HttpException;
        Response.Clear();
        Server.ClearError();
    }
httpException上的

错误:

{System.Web.HttpException (0x80004005): File does not exist.
  at System.Web.StaticFileHandler.GetFileInfo(String virtualPathWithPathInfo, String 
  physicalPath, HttpResponse response)
  at System.Web.StaticFileHandler.ProcessRequestInternal(HttpContext context, String 
  overrideVirtualPath)
  at System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext context, 
  AsyncCallback callback, Object state) at   
  System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionSt
ep.Execute()
 at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& 
 completedSynchronously)}

2 个答案:

答案 0 :(得分:0)

我找到了解决方案

string errorLocation = Request.Path;

这个语法在Application_Error()中告诉你问题在哪里:)

答案 1 :(得分:0)

只是说明我对此异常的体验,在我的情况下,原因是没有指定网页作为网站的起始页。