如何在删除配置时避免Logger.Write()上的异常?

时间:2011-07-19 02:23:15

标签: .net logging enterprise-library

如果用户从App.Config中删除了日志记录配置,则在调用Logger.Write("test")时会引发ActivationException。

在没有引发异常的情况下测试此的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

在我看来,有几种方法可以解决这个问题,但如果你想确保不引发异常,因为日志配置已被删除,我将使用系统中的“ConfigurationManager.OpenExeConfiguration” .Configuration命名空间,用于在运行时检查文件,以检查是否存在我期望的部分和数据。

答案 1 :(得分:1)

正如我在评论中提到的,我认为没有一种万无一失的方法可以确定是否会引发异常。我不确定您的应用程序的具体细节,但一种方法是尝试在应用程序启动时记录消息。例如。 “申请开始。”如果成功,那很好。如果它抛出异常,则捕获异常并使用具有默认配置的fluent API配置Enterprise Library。然后,您可以记录一条消息,指示应用程序启动日志记录失败。

应用程序启动后,企业库应该最有可能正确配置,后续的Logger.Write应该会成功。