【问题标题】:Enterprise Library Exception Handling Application Block and Logging Application Block proper use in ASP.NET企业库异常处理应用程序块和日志记录应用程序块在 ASP.NET 中的正确使用
【发布时间】:2010-10-14 02:52:06
【问题描述】:

我掌握了 ASP.NET 的这个应用程序块,但我不确定我是否在 ASP.NET 中正确地使用它进行编码。

我已经到处寻找有关如何使用企业库异常处理应用程序块的正确示例,但只找到了有关 Windows 窗体的文章。

有人可以为我指出正确的方向,以便在 ASP.NET 中使用企业库异常处理应用程序块吗? (例如在类中处理异常,何时将异常传播到 Global.asax 中的 Application_Error,如何处理 Application_Error 中已处理和未处理的异常)。

我真的很想看看其他人在做什么。

将企业库错误处理应用程序块与日志记录应用程序块结合起来的代码也会很有帮助。

谢谢!

【问题讨论】:

    标签: .net asp.net logging exception-handling enterprise-library


    【解决方案1】:

    使用 ELEHAB 处理异常在所有类型的应用程序中基本相同。您发现错误并致电ExceptionPolicy.HandleException。唯一的区别就是你把你的“全局”catch 块放在哪里。在 WinForms 中,您可以将其放在 Main 方法中。在 ASP.NET 中,您可以将其放在 Application_Error 事件中。在 Windows 服务中,您可以将其放在后台线程启动方法中。

    【讨论】:

      【解决方案2】:

      也许从你的目标开始,然后确定如何实现它们会更好。

      我们团队的做法是在 global.asax 的 Application_Error 事件中记录异常。这会捕获所有未处理的异常并将它们记录到我们的数据库中。我们没有使用异常处理块的许多功能,因为我们还没有确定对它们的需求。

      【讨论】:

        【解决方案3】:

        您也可以尝试下面链接中提供的方法和库

        http://sites.google.com/site/spyderhoodcommunity/tech-stuff/aspnetexceptionhandlingandlogginglibrary

        异常处理块主要用于企业级应用程序。它会带来性能和学习曲线方面的开销。

        如果您的需求更简单,上面的链接将为您提供执行异常处理的架构以及日志库。

        【讨论】:

        • 学习曲线不是问题,而是糟糕的文档
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-30
        • 2013-08-01
        • 2011-07-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多