asp.net – 全局ASAX中的错误:文件不存在
|
我试图了解发送给我的全局ASAX OnError处理程序发生了什么错误. using System;
using System.Web;
namespace GLSS.Components.HttpModules
{
public class ExceptionModule : System.Web.IHttpModule
{
private void OnError(object sender,EventArgs e)
{
HttpContext context = HttpContext.Current;
//get the last error
Exception ex = context.Server.GetLastError();
if(ex.InnerException.GetType().ToString() == "CSLA.DataPortalException")
ex = ex.InnerException;
这是我的Exception转换为String HttpContext.Current.Server.GetLastError().Message "File does not exist." HttpContext.Current.Server.GetLastError().StackTrace " at System.Web.StaticFileHandler.GetFileInfo(String virtualPathWithPathInfo,String physicalPath,HttpResponse response) at System.Web.StaticFileHandler.ProcessRequestInternal(HttpContext context) at System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext context,AsyncCallback callback,Object state) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)" 如何确定导致此错误的代码行?我试图将我的Debug选项设置为在发生错误时中断,但事实并非如此,我仍然最终在ONERROR全局处理程序中. 有一件事是我看到代码假定会有一个内部异常,这似乎是NULL并导致处理程序中的第二个错误. 我假设错误发生在编译代码的某处.我检查了Web.Config,其中提到的唯一路径是一个日志路径,这似乎有效,并且日志记录似乎正在工作. 更新 How to solve exception “File does not exist”? 当我在立即窗口中检查时: ? HttpContext.Current.Request.Url.ToString() "http://localhost:2322/favicon.ico" 然而,让我感到困惑的是,我使用“在文件中查找”搜索我的整个解决方案,寻找favicon.ico,我看不到任何参考. 为什么我看到没有找到图标文件时会出现错误?我猜有些装配正在使用它?但是为什么它在Web根目录中寻找呢? 解决方法大多数现代浏览器都盲目地提出了对favicon.ico的请求,如果没有favicon(这是正确的行为),他们期望404(找不到文件).您可以在下面找到关于 Link type “icon”的HTML5工作草案的引用:
您看到异常的原因是配置为使用托管/集成管道模式的Web开发服务器或IIS通过Global.asax放置所有请求(包括错误). 您可以尝试通过创建以下关于favicon的虚拟链接来阻止浏览器发出请求: <html>
<head>
<link rel="shortcut icon" href="#" />
...
</head>
...
</html>
您也可以尝试以下方法之一: >在RegisterRoutes方法的开头添加以下行: routes.IgnoreRoute( “的favicon.ico”); 甚至更多的扩展版本: routes.IgnoreRoute(“{* favicon}”,new {favicon = @“(.* /)?favicon.ico(/.*)?”});>为自己创建一个空文件>通过检查404的HttpException.GetHttpCode()和/((System.Web.HttpApplication)Sender)./texti.ico的.Context.Request.Url来筛选出错误. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 将.html文件渲染为ASP.NET MVC中
- asp.net-mvc – 在默认的asp.net mvc 5模板中输入
- owin – 如何在Startup.cs中添加CamelCaseProper
- asp.net-mvc – 在ASP.NET MVC 3 Action方法中并
- 将ASP.NET与ASP混合使用
- asp.net-mvc – ASP.NET MVC API或WCF API
- asp.net中的GridView分页问题
- asp.net-web-api2 – 如何创建HttpRequestHeader
- asp.net-mvc – ASP.Net 5中缺少FormCollections
- asp.net – 如何使用ReportService2010命名空间呈
