在ASP.NET 3.5中实现异常处理

时间:2010-01-25 00:25:27

标签: asp.net exception-handling

我想在ASP.NET应用程序上实现异常处理。您如何建议我实施它?一些要求是:

  • 发生异常时,用户应该看到友好页面
  • 管理员应该收到包含例外详情的电子邮件

我知道有几种实现异常的方法(例如:事件查看器中的日志消息)

推荐的方法是什么?

3 个答案:

答案 0 :(得分:2)

我写了一篇关于此的文章,我认为你真的很喜欢

http://dotnetblogger.com/post/2008/12/03/ASPNET-Health-Monitor.aspx

至于友好页面位,我只是使用web.config中内置的异常处理...因为你在global.asax中实现了未知的异常内容

您还可以处理try / catch块中的异常,并根据需要为其添加注释。然后只需将数据库绑定到一个漂亮的gridview,以便管理员轻松查看错误。

答案 1 :(得分:2)

推荐的方法实际上取决于您需要对错误信息执行的操作。

对于简单的应用程序,只需设置web.config文件以重定向到友好的错误页面就足够了。

通过使用Global.asax Application_Error事件处理未处理的错误信息到数据库,文件,Windows应用程序日志或Web服务通常是一个好主意。您还可以使用web.config来获取友好页面。一般来说,我不建议使用Windows错误日志,因为它们往往有点迟钝,但它没有任何问题。

对于非常详细的操作信息,包括警告和信息消息,log4net等工具被广泛使用。通常,您可以选择产品或企业级应用程序,您的支持团队需要尽可能多的信息来诊断错误。

MSDN有walkthrough部分基本错误处理设置以及您可以使用它们执行的操作。

答案 2 :(得分:0)

我有一个很好的可重用HttpModule,您可以查看here。它可用于轻松处理在正常用户请求期间发生的异常以及在后台线程中发生的异常。