我的 App.Config
是这样的:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="foo" value=""/>
</appSettings>
</configuration>
我尝试使用以下方法保存 foo
值:
private void SaveValue(string value) {
var config =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings.Add("foo", value);
config.Save(ConfigurationSaveMode.Modified);
}
但这并没有改变它的值(value)。我没有异常(exception)。 如何解决这个问题?提前致谢!
最佳答案
当您使用 Visual Studio 进行调试时,可能是 <yourexe>.vshost.exe.config
被修改而不是 <yourexe>.exe.config
.当您在 Release模式下构建应用程序时,只有 <yourexe>.exe.config
存在并将更新。
您的代码还将向配置文件添加一个额外的节点。使用类似于下面的代码来更新设置:
var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["foo"].Value = "text";
config.Save(ConfigurationSaveMode.Modified);
关于c# - app.config 没有保存值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8840904/