在讨论错误处理时,我是新手。这是我想要学习的主题但是现在我没有空闲时间,所以我希望实现一个错误/异常处理程序,这是我上周开发的几个项目(C#,.NET 3.5)。
你建议我为此实施什么?另一点是存储错误日志的位置。在数据库或.xml文件中?好吧,我真的需要一些帮助!
顺便问一下,有没有关于错误处理的书?
提前致谢, Guilherme Cardoso
答案 0 :(得分:0)
Log4net是用于记录各种来源的强大工具。在我工作的地方,我们使用Enterprise Library中的记录应用程序块。您可以在他们的网站上阅读这些资源。
至于记录到XML文件与数据库,每种方法都有权衡。使用本地文件可以减少运行应用程序所需的可破坏组件数量。想象一下,数据库出现故障,您的应用程序尝试登录到数据库发生故障的数据库...嗯。
另一方面,登录数据库可以显着提高您查询的能力,并获得有关记录错误性质的情报。
没有人能够绝对告诉你应该做什么;只需权衡权衡和你的期望,你就会好起来。
如果您想使用一些自制错误处理,可以使用Global.asax的Application_Error
方法并手动记录HttpContext.Current.AllErrors
属性的成员。您还可以在上下文中使用ClearError()
方法清除错误,然后在需要登录并继续时重定向到安全页面。
答案 1 :(得分:0)
对于未处理的例外,您可能希望使用ELMAH。它的设置非常简单 - 只需要一个dll和web.config中的一些设置。