简单问题:Application_Error

sanlng 2006-08-07 10:23:07
怎么样才能让它发生作用:
protected void Application_Error(Object sender, EventArgs e)
{
Response.Write("发生错误啦!");
}
...全文
778 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
leafsword_519 2006-08-08
  • 打赏
  • 举报
回复
当一个异常在调用堆栈中没有被处理,也没有被框架代码处理时,我们说这个异常未处理,它将被ASP.NET捕获,ASP.NET对此未处理错误的处理方法是显示一个页面,列出该未处理异常的详细情况。

有两个在异常未处理时将被ASP.NET调用的事件:

Page_Error event,它提供捕获在Page级别发生错误的方法。

Application_Error event,它提供捕获在代码中的任何地方发生错误的方法。该事件的范围是整个应用程序,这使它成为添加日志代码的一个理想地方。

这两个事件的执行顺序是——先执行Page_Error,后执行Application_Error。如果希望在Page_Error中处理过的错误就不要再在Application_Error中处理,我们可以在Page_Error中处理错误之后,使用Server.ClearError方法清除最后一个错误,避免再调用Application_Error。

我们可以在Global.asax文件中找到这应用程序级错误事件Application_Error,用以下代码记录我们的错误日志。

protected void Application_Error(Object sender, EventArgs e)

{

EventLog.WriteEntry("MyProject",

Server.GetLastError().InnerException.Message,

EventLogEntryType.Error);

}

然后我们可以在“控制面板->管理工具->事件查看器”中查看我们的错误日志。
sanlng 2006-08-08
  • 打赏
  • 举报
回复
没人知道?不是吧!

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧