ConfigurationManager.AppSettings只读取第一个键

时间:2017-01-09 12:18:24

标签: c# app-config

我正在尝试从app.config文件的appSettings部分读取值。我不明白为什么,但ConfigurationManager只读取第一个键(log4net.Internal.Debug),同时我需要另外两个键。这是appSettings。

<appSettings>
    <add key="log4net.Internal.Debug" value="true" />
    <add key="SendGridUser" value="some value" />
    <add key="SendGridPassword" value="some value" />
  </appSettings>

以下是代码:

var username = ConfigurationManager.AppSettings["SendGridUser"];
var password = ConfigurationManager.AppSettings["SendGridPassword"];

1 个答案:

答案 0 :(得分:2)

如果在调试模式下,您只在AppSettings集合中看到一个密钥,则表示ConfigurationManager未读取您认为应该读取的配置文件。可能的原因:

  • 如果为配置文件Copy to Output Directory设置选择了较新的或'始终',则您没有'副本。因此,文件未在构建文件夹中更新。
  • 调试版本文件中有transformation,它从配置中删除了一些设置。检查解决方案资源管理器中是否有App.Debug.config