2009-02-13 66 views
3

我试图在运行时更改我的应用程序设置文件的一个键,但它不起作用。如何更改运行时应用程序设置

我做这样:

ConfigurationSettings.AppSettings["XPTO"] = "HELLO"; 

它似乎只在内存中的变化,而不是在文件。

有谁知道如何做到这一点?

谢谢。

回答

5

AppSettings文件不是可写的。它被设计用于存储配置,这些配置在运行时不会改变,但可能会随时间而改变,即:DB连接字符串,Web服务URL等。

因此,尽管可能在实际中更新文件,但您应该重新 - 如果这个值应该存储在那里

5

假设您的应用程序对文件的写权限...



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

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

+0

我该如何访问ConfigurationManager类。我尝试使用这段代码,它会导致一些错误,但不会激发该类:S。 – rpf 2009-02-18 12:17:22

+2

添加System.Configuration作为参考。 – Joe 2009-02-18 15:35:35

相关问题