题
我试图改变在运行的一个关键的应用程序的设置文件,但是它不工作。
我做这样的:
ConfigurationSettings.AppSettings["XPTO"] = "HELLO";
它似乎只有改变在存储器,不对该文件。
任何人都不会知道如何做到这一点?
谢谢。
解决方案
看看我的 概述。净设置文件...总之,我想你想要一个用户范围的设置。它将表现得更像你所期望的。
编辑: 如果您使用 设计师在Visual Studio, 然后简单地改变"范围","用户"。如果不,你应该能够做到相当于编程。
其他提示
在的AppSettings文件不被设计为可写的。它被设计用于存储配置,不会在运行时改变,但可能会随时间发生变化,即:DB连接字符串,Web服务的URL等
因此,虽然有可能更新,你应该,如果这个值应该存储在那里重新驴现实中的文件。
假设你的应用程序对文件的写权限...
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); // the config that applies to all users
AppSettingsSection appSettings = config.AppSettings;
if (appSettings.IsReadOnly() == false)
{
appSettings("Key").Value = "new value";
config.Save();
}
我忽略了所有可以抛出的可能例外...
不隶属于 StackOverflow