有关从单独的配置文件中读取设置的问题以及与其类似的其他配置文件,但我的问题是特定于应用程序属性设置(即<MyApplication.Properties.Settings>- 请参阅下面的XML文件)以及如何动态加载它们.我在这篇文章中尝试了这个方法,其中包括刷新主配置文件的整个appSettings部分,但我的改编引发了异常,因为我没有替换appSettings部分:
var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
// Have tried the other ConfigurationUserLevels to no avail
config.AppSettings.File = myRuntimeConfigFilePath;
config.Save(ConfigurationSaveMode.Modified); // throws ConfigurationErrorsException
ConfigurationManager.RefreshSection("userSettings");
Run Code Online (Sandbox Code Playgroud)
ConfigurationErrorsException.Message是"根元素必须与引用文件的部分的名称匹配'appSettings'(C:\ myFile.xml第2行)." 该文件是:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<userSettings>
<MyApplication.Properties.Settings>
<setting name="SineWaveFrequency" serializeAs="String">
<value>6</value>
</setting>
<setting name="SineWaveAmplitude" serializeAs="String">
<value>6</value>
</setting>
</MyApplication.Properties.Settings>
</userSettings>
</configuration>
Run Code Online (Sandbox Code Playgroud)
有没有办法将此文件中的值导入到MyApplication.Properties.Settings.Default类中,框架处理所有XML反序列化,就像在应用程序启动时加载配置文件一样?