App.config没有返回密钥

时间:2016-09-12 08:58:11

标签: c# app-config

请协助。我一直在寻找答案,但我无法找到解决方案。

我有以下app.config:

<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
  <appSettings>
    <add key="File1" value="...\XML Files\File1.xml" />
    <add key="File2" value="...\XML Files\File2.xml" />
    <add key="File3" value="...\XML Files\File3.xml" />
  </appSettings>
</configuration>

这是我的代码:

var appSettings = ConfigurationManager.AppSettings;
string location = appSettings["File1"];

if (location != null)
{
   Console.WriteLine(location);
}

问题是我的位置不断返回Null

1 个答案:

答案 0 :(得分:0)

您需要将DLL的app.config文件中的设置复制到web.config文件中。框架无法读取DLL配置文件!

My answer here向您展示了如何做到这一点。然后,DLL将能够按照您的预期访问其设置。

另外:请按照您的方式停止使用配置管理器。这很容易出错。 Visual Studio将为您创建一个Settings类,其中包含您在Visual Studio中创建的每个设置的属性,因此请将它们用作:

 string s = Properties.Settings.Default.StringSettingName;

是的,如果将设置复制到主配置文件,这也适用于DLL。