【发布时间】:2011-06-16 16:36:15
【问题描述】:
抱歉,如果这个问题已经在这个网站上得到了回答,我搜索了但没有找到这个确切的场景。
我正在将 log4net 添加到 WCF 服务。我在 Application_Error 事件中添加了一个处理程序,它会在每个请求中捕获一个未找到文件的错误。
我在网站上看到过这种情况,通常该错误可以追溯到根目录中没有“favicon”文件,或者 css 样式表中引用的图像丢失。
但是,这是一个 WCF 服务,没有 CSS 样式表,在根目录下添加一个 favicon 并没有解决问题。
还有其他人有解决此问题的好方法吗?
一些线索:
- 我还没有将它部署到真正的 IIS 服务器上,我在本地运行它。
- 当我在 Visual Studio 中的 DEBUG 中运行时不会发生该错误,仅当我从 Web 浏览器(IE 或 Chrome)访问该服务时才会发生此错误
-
我在错误消息中添加了 url 和文件路径,它们是这样的:
文件路径: /
错误: System.Web.HttpException (0x80004005):文件不存在。
编辑:以上值显示在记录的异常中:
protected void Application_Error(object sender, EventArgs e)
{
var objErr = Server.GetLastError().GetBaseException();
if (objErr is System.Web.HttpException)
{
var filePath = Context.Request.FilePath;
var url = ((HttpApplication) sender).Context.Request.Url;
Log.Error("URL: " + url + "; FilePath: " + filePath, objErr);
} else
Log.Error("Application Error", objErr);
}
任何帮助将不胜感激。
【问题讨论】:
-
您是否忘记在 URL 中提及 .svc 文件?
-
查看我发布到我的问题的编辑。
-
使用 ` 键(也包含 ~ 字符的那个)来格式化 cmets 等中的代码。
-
@Joel,并非所有键盘都在与波浪号相同的键上具有反引号。我的 `, ¬ 和 ¦ 都在一个键上 :)
-
@Drew Noakes - 确实如此,但就像生活中的大多数事情一样,OP 使用 Dvorak qwerty 的百分比很高。
标签: asp.net wcf httpexception