我想从配置文件中的 AppSettings 读取键值对,但我看不到我的自定义 AppSettings。我猜程序看不到我的自定义配置文件。对此有什么建议吗?谢谢!由于安全问题,我不想将我的键值对放在设置文件中。
我添加了System.Configuration作为参考,并按照这个答案的建议尝试了下面的代码,但它没有用。
使用 Rhino 6.30.20288.16410 和 .NET Framework 4.6.2
配置文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="dbConnStr" value="MyConnectionString"/>
</appSettings>
</configuration>
代码:
private static string GetAppSetting(Configuration config, string key)
{
KeyValueConfigurationElement element = config.AppSettings.Settings[key];
if (element != null)
{
string value = element.Value;
if (!string.IsNullOrEmpty(value))
return value;
}
return string.Empty;
}
private static string GetConnStr(string key)
{
Configuration config = null;
string exeConfigPath = System.Reflection.Assembly.GetExecutingAssembly().Location;
try
{
config = ConfigurationManager.OpenExeConfiguration(exeConfigPath);
}
catch (Exception ex)
{
//handle errror here.. means DLL has no sattelite configuration file.
}
if (config != null)
{
string myValue = GetAppSetting(config, key);
return myValue;
}
return "";
}