【问题标题】:How to load the App.config file?如何加载 App.config 文件?
【发布时间】:2012-03-27 23:51:29
【问题描述】:

我正在解析一个项目的 App.config 文件。此配置文件已从调用者项目加载。在被调用的项目中,我有类似的东西:

   XmlDocument xmlDoc = new XmlDocument();
   xmlDoc.Load("app.config");
   // Some parsing...

很遗憾,app.config 文件的位置不正确。显然Load方法是浏览调用者项目的~/bin/Release目录,但是app.config文件位于~目录下。

有什么方法可以正确加载这个 App.config 文件吗?

谢谢

【问题讨论】:

  • 这是一个表单项目吗?我猜是……
  • 你为什么不直接使用 System.Configuration 中的 ConfigurationManager(你需要添加对它的引用!),你就完成了 - 不用自己解析混乱......

标签: c# .net app-config


【解决方案1】:

我不明白你为什么需要这样做。配置文件App.Config在构建时复制到运行时目录,并重命名为yourapplicationname.exe.config

您可以使用ConfigurationManager 类来访问该文件的内容。

【讨论】:

    【解决方案2】:

    加载配置信息的正确方法是使用System.Configuration 命名空间中的类型。不要自己解析。对于许多类型,您还需要引用 System.Configuration.dll

    Visual Studio 应在构建时将名为 app.config 的文件复制到输出目录。它将文件重命名<assembly_name>.config,所以如果你的程序集是myapp.exe,那么配置文件就是myapp.exe.config。检查文件的属性是否设置为“构建操作:无,复制到输出目录:不复制”。 VS 将此视为一种特殊情况。不要覆盖它。

    【讨论】:

    • 我没有使用 ConfigurationManager,因为我没有找到如何用它解析我的 app.config 文件。如何访问诸如:SelectNodes 或 GetNamedItem 等方法?
    • 我还没有找到一个很好的自定义部分的介绍性(即简单)示例并解析它们——一旦你知道如何,它就相当容易了。必须添加到博客待办事项列表:-)
    • 谢谢理查德!仅供参考,我将第二个问题移至此处:stackoverflow.com/questions/2804390/…
    猜你喜欢
    • 2012-12-02
    • 1970-01-01
    • 1970-01-01
    • 2011-01-07
    • 2016-01-19
    • 2011-10-17
    • 2017-10-22
    • 1970-01-01
    • 2013-03-29
    相关资源
    最近更新 更多