【问题标题】:C# app.config format issueC# app.config 格式问题
【发布时间】:2009-02-28 12:18:18
【问题描述】:

如果 app.config 格式错误,例如不是格式正确的 XML 文件,应用程序将无法加载。有什么方法可以让我知道这样的问题 - 例如,如果 app.config 由于格式错误的 XML 文件而加载错误,则接收一些事件(以便我可以编写文件日志和事件日志来记录此问题)?

提前致谢, 乔治

我的代码和 app.config 看起来是这样的,但是没有抛出异常。

    class Program
    {
        public static void MyEventHandler(object sender, EventArgs e)
        {
            return;
        }

        static void Main(string[] args)
        {
            AppDomain currentDomain = AppDomain.CurrentDomain;
            currentDomain.UnhandledException += MyEventHandler;

            return;
        }
    }

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configuration>

【问题讨论】:

    标签: c# xml events app-config handler


    【解决方案1】:

    在您的应用程序启动中,例如在主类的静态构造函数中。您可以将其定义为

      AppDomain currentDomain = AppDomain.CurrentDomain;
      currentDomain.UnhandledException += MyHandler; // define MyHanlder somewhere.
    

    捕获由于配置引起的 ConfigurationErrorsException。

    【讨论】:

    • 您应该注意,当您收到 AppDomain.UnhandledException 时,无论您做什么,您的应用程序都将被终止。
    • 感谢codemeit!我写过这样的代码,但我怎么知道它是错误的 app.config 格式的异常? public static void MyEventHandler(object sender, EventArgs e) { return; }
    • 感谢您的建议,亚历克斯!但是我们如何区分应用程序配置加载错误,因为其他类型的异常之间的 XML 格式错误?
    • 尝试查看 sender 和 eventArgs 中的内容?
    • 我已经发布了我的代码和错误的 app.config 格式,但没有抛出异常。任何想法为什么?
    猜你喜欢
    • 1970-01-01
    • 2013-01-04
    • 1970-01-01
    • 2013-11-23
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    相关资源
    最近更新 更多