我有一个app.config,我试图从中获取值,我在一个可执行的解决方案中。我已经比较了输出config.exe,一切都可见。当我尝试设置这些值时,它们根本不会显示在集合中。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<appSettings>
<add key="a" value="b"/>
</appSettings>
</configuration>
我已经尝试过所有我能想到的东西,而且之前从未遇到过这个问题。这是一个更大的解决方案的一部分,我无法显示真正的价值,但我已经在我创建的控制台项目中测试了它们,它们显示得很好。我不确定为什么他们不会出现在这个特定的解决方案中。任何第三方工具都会影响这个吗?
我试图像这样访问它们:
using System.Configuration;
private readonly string stringToSet;
public TheConstructor()
{
stringToSet = ConfigurationManager.AppSettings[key];
}
UPDATE 我刚才发现,由于某种原因,类库以某种方式劫持了我的app.config。我引用app.config的解决方案认为我需要来自.dll.config的密钥。这怎么可能?我使用配置的项目是在同一个项目中引用它,而不是从类库中引用它。怎么会发生这种情况?