【发布时间】:2014-02-19 00:42:34
【问题描述】:
这个问题更多是出于好奇。场景是,我放了一些代码让我知道我的 ASP.Net 内部网门户中是否以及何时出现任何错误。绝对没有问题,更多的是积极主动,以防万一。
长话短说,我在Global.asax.cs添加了这段代码:
protected void Application_Error(object sender, EventArgs e) {
try {
Exception ex = Server.GetLastError();
if (ex != null) {
MailMessage message = new MailMessage("a@company.com.au", "me@company.com.au");
message.Subject = @"Error";
message.Body = string.Format(@"<html><body>Unhandled error on: {0} <br/> {1} <br/> {2}",ex.Source.ToString(),ex.Message,ex.ToString ());
message.IsBodyHtml = true;
SmtpClient client = new SmtpClient("server.company.com.au");
client.Send(message);
message.Dispose();
client.Dispose();
}
} catch (Exception) { }
}
而且我一直在我的电子邮件中收到此错误消息:
出现未处理的错误:System.Web 文件不存在。 System.Web.HttpException (0x80004005):文件不存在。在 System.Web.StaticFileHandler.GetFileInfo(字符串 virtualPathWithPathInfo,字符串物理路径,HttpResponse 响应) 在 System.Web.StaticFileHandler.ProcessRequestInternal(HttpContext 上下文,字符串 overrideVirtualPath) 在 System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext 上下文, AsyncCallback 回调,对象状态)在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep 步骤, Boolean & completedSynchronously)
我被难住了。我不知道这个错误来自哪里,我仍在努力寻找它。它没有以任何方式影响网站的任何方面。我相信这个错误之前会出现,因为我所做的只是添加上面的代码。我正在使用 .Net Farmework 4。
有人知道这是什么吗?
【问题讨论】:
-
@MikeSmithDev - catch 有一个日志到文件功能,为了便于阅读,我在此处省略了该功能。顺便说一句,日志文件仍然是空的。
-
可能的重复说明它在开发服务器中的问题,我的是在生产服务器中。开发服务器没有问题,开发机器也没有问题。
-
...服务器无关紧要。这是相同的错误,并且可能以相同的方式解决。你缺少一个文件,你只需要隔离调用它的页面。
-
好的,所以我将所有 .js、.css 和图像文件(没有服务器端代码的文件)从开发机器复制到生产服务器,目前该错误似乎已经停止。