我有Visual Studio解决方案,该解决方案同时具有asp.net和控制台应用程序项目。在控制台应用程序中,我有这样声明的app.config,应该从user.config中读取
<appSettings file="user.config">
</appSettings>
这是我的user.config
<appSettings>
<add key="MyKey" value="Test" />
</appSettings>
然后在我的代码中,我尝试像
那样获取 string myKey = ConfigurationManager.AppSettings["MyKey"];
但是它给了我空值。这里有什么问题以及如何解决?
更新1 我已将app.config和user.config的“复制到输出”目录设置为“始终复制”
答案 0 :(得分:1)
user.config
必须与app.config
位于同一目录中;如果在运行时找不到文件,它将使用app.config
中的值(不存在),因此得到null
。确保将user.config
配置为在构建时复制到输出目录,并且将构建操作设置为“无”。
构建项目后,输出目录中是否同时存在两个config
文件?