如何重新创建app.config.exe.config

时间:2013-06-05 19:57:37

标签: c# winforms app-config

我的程序正在从我的app.config创建一个.exe.config,该exe保留了用户在程序运行期间和之后所做的更改。

这很好,除了我想在我的Windows窗体应用程序中添加一个按钮,允许用户将这些设置重置为我的app.config中静态/手动更改的原始值。

最好的方法是什么?这是我app.config的全部内容。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="CacheDir" value="C:\blah\prod\cache" />
<add key="CheckFilesDir" value="C:\blah\prod\cache\cachefiles" />
<add key="GenerateTo" value="C:\Users\blah\Desktop" />
<add key="CustomVariable1Enabled" value="false" />
<add key="CustomVariable2Enabled" value="false" />
<add key="CustomVariable1" value="" />
<add key="CustomVariableValue1" value="" />
<add key="CustomVariable2" value="" />
<add key="CustomVariableValue2" value="" />

通常访问类似..

ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap();
configFileMap.ExeConfigFilename = "C:\\Users\\RJenkins\\Documents\\Visual Studio 2010\\Projects\\CacheConfigNinja\\CacheConfigNinja\\bin\\Debug\\CacheConfigNinja.exe.config";
//configFileMap.ExeConfigFilename = "C:\\Users\\RJenkins\\Documents\\Visual Studio 2010\\Projects\\CacheConfigNinja\\CacheConfigNinja\\bin\\Release\\CacheConfigNinja.exe.config";

Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None);

2 个答案:

答案 0 :(得分:2)

您可以在“应用程序设置”上调用Reset()方法。从文档中,这个方法:

  

将持久应用程序设置值恢复为相应的默认属性。

答案 1 :(得分:1)

这个怎么样?

Properties.Settings.Default.Reset()
Properties.Settings.Default.Reload()