【问题标题】:App.Config not updatingApp.Config 未更新
【发布时间】:2014-07-02 13:38:57
【问题描述】:

我想更新应用程序。 Windows 窗体 c# 中的配置文件。这是更新应用程序的代码。配置

 // updating
 System.Configuration.Configuration config =  ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
 config.AppSettings.Settings.Remove("name");
 config.AppSettings.Settings.Add("name",txtName.Text);
 config.Save(ConfigurationSaveMode.Modified);
 ConfigurationManager.RefreshSection("appSettings");

 // show updating result on labels ( and this work fine )
 string value = ConfigurationManager.AppSettings["name"];
 lblName.Text = value;

当我运行应用程序时,此更新工作正常,但当我重新启动应用程序时,所有配置都重置为默认值

【问题讨论】:

  • 所以没有办法更新默认值?
  • 我想我弄错了。请检查此link
  • 传统上,app.config 与主程序一起位于 Program Files 目录中,标准用户无法写入,因此如果不是以管理员身份运行,您的程序也无法写入。您是否考虑过不使用 app.config 而是使用您自己的设置容器,该容器将自己保存在一个常见的可写文件夹中,如 CommonApplicationData
  • 链接答案不起作用:(
  • 我是 Windows 窗体的初学者!我不知道 CommonApplicationData 。

标签: c# winforms app-config


【解决方案1】:

不使用配置类,而是将文件作为常规 Xml 文件打开并进行更改。请注意,当您执行此操作时,当您将文件保存回来时,您的 .config 文件中的任何注释都将被 Xml 类删除。为了防止这种情况,您必须从原始配置文件中读取所有类型的 Xml 节点并将它们全部写回。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-09
    • 1970-01-01
    • 2013-05-31
    • 2012-10-28
    • 1970-01-01
    • 2011-06-05
    • 2019-01-06
    相关资源
    最近更新 更多