我无法访问配置文件中的值。
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>
你有什么建议我该怎么做吗?
以下是我对2016年的看法
<add key="ClientsFilePath" value="filepath"/>
确保系统。引用配置。
问题是询问appsettings键的值
哪个才是最应该的呢
string yourKeyValue = ConfigurationManager.AppSettings["ClientsFilePath"]
//yourKeyValue should hold on the HEAP "filepath"
这里有一个可以将值组合在一起的方法(不是针对这个问题)
var emails = ConfigurationManager.AppSettings[ConfigurationManager.AppSettings["Environment"] + "_Emails"];
电子邮件将是环境键+ " _email "的值
example : jack@google.com;thad@google.com;
我正在使用:
ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();
//configMap.ExeConfigFilename = @"d:\test\justAConfigFile.config.whateverYouLikeExtension";
configMap.ExeConfigFilename = AppDomain.CurrentDomain.BaseDirectory + ServiceConstants.FILE_SETTING;
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigurationUserLevel.None);
value1 = System.Configuration.ConfigurationManager.AppSettings["NewKey0"];
value2 = config.AppSettings.Settings["NewKey0"].Value;
value3 = ConfigurationManager.AppSettings["NewKey0"];
其中value1 =…和value3 =…给出null和value2 =…作品
然后我决定用以下内容替换内部app.config:
// Note works in service but not in wpf
AppDomain.CurrentDomain.SetData("APP_CONFIG_FILE", @"d:\test\justAConfigFile.config.whateverYouLikeExtension");
ConfigurationManager.RefreshSection("appSettings");
string value = ConfigurationManager.AppSettings["NewKey0"];
使用VS2012 .net
以下是我对2016年的看法
<add key="ClientsFilePath" value="filepath"/>
确保系统。引用配置。
问题是询问appsettings键的值
哪个才是最应该的呢
string yourKeyValue = ConfigurationManager.AppSettings["ClientsFilePath"]
//yourKeyValue should hold on the HEAP "filepath"
这里有一个可以将值组合在一起的方法(不是针对这个问题)
var emails = ConfigurationManager.AppSettings[ConfigurationManager.AppSettings["Environment"] + "_Emails"];
电子邮件将是环境键+ " _email "的值
example : jack@google.com;thad@google.com;