AppSettings如何从.config文件中获取值?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (24)

我无法访问配置文件中的值。

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
var clientsFilePath = config.AppSettings.Settings["ClientsFilePath"].Value; 
// the second line gets a NullReferenceException

.config文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <!-- ... -->
    <add key="ClientsFilePath" value="filepath"/>
    <!-- ... -->
  </appSettings>
</configuration>

你有什么建议吗?

提问于
用户回答回答于

这对我有用:

string value = System.Configuration.ConfigurationManager.AppSettings[key];
用户回答回答于

dtsg给出的答案是:

string filePath = ConfigurationManager.AppSettings["ClientsFilePath"];

但你需要添加一个程序集引用

系统配置

转到解决方案资源管理器右键单击参考并选择添加参考。选择“ 组件”选项卡并搜索配置

这是我的App.config的一个例子:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
  <appSettings>
    <add key="AdminName" value="My Name"/>
    <add key="AdminEMail" value="MyEMailAddress"/>
  </appSettings>
</configuration>

可以通过以下方式获得:

string adminName = ConfigurationManager.AppSettings["AdminName"];

扫码关注云+社区