我试图改变在运行的一个关键的应用程序的设置文件,但是它不工作。

我做这样的:

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();
    }

我忽略了所有可以抛出的可能例外...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top