App.config 没有返回密钥
App.config not returning key
请协助。我一直在寻找答案,但我找不到解决方案。
我有以下 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
您需要将设置从 DLL 的 app.config 文件复制到 web.config 文件。框架不读取 DLL 配置文件!
My answer here 向您展示了如何做到这一点。然后,DLL 将能够如您所愿地访问其设置。
另外:请停止使用配置管理器的方式。这是容易出错的。 Visual Studio 将为您创建一个 Settings
class,其中包含您在 Visual Studio 中创建的每个设置的属性,因此请将它们用作:
string s = Properties.Settings.Default.StringSettingName;
是的,如果您将设置复制到主配置文件,这也适用于 DLL。
请协助。我一直在寻找答案,但我找不到解决方案。
我有以下 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
您需要将设置从 DLL 的 app.config 文件复制到 web.config 文件。框架不读取 DLL 配置文件!
My answer here 向您展示了如何做到这一点。然后,DLL 将能够如您所愿地访问其设置。
另外:请停止使用配置管理器的方式。这是容易出错的。 Visual Studio 将为您创建一个 Settings
class,其中包含您在 Visual Studio 中创建的每个设置的属性,因此请将它们用作:
string s = Properties.Settings.Default.StringSettingName;
是的,如果您将设置复制到主配置文件,这也适用于 DLL。