config文件修改问题

闭着眼刷牙 2012-12-10 04:12:38
一个工程中两段程序(程序1.在winform中的控件对config进行修改 程序2.程序获取config配置run,但中途会修改config数据).单独打开程序1时正常,运行程序2时再在程序与的界面中修改配置就无法保存,提示Message = "這個組態檔已被另一個程式變更。
下面是我用到的一些代码:
Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

...全文
227 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
听可笑的承诺 2012-12-12
  • 打赏
  • 举报
回复
用xml修改。。
闭着眼刷牙 2012-12-12
  • 打赏
  • 举报
回复
最后用互斥对象把修改的那块包起来 解决了
闭着眼刷牙 2012-12-10
  • 打赏
  • 举报
回复
引用 6 楼 viki117 的回复:
刷新它作什么,难道还会触发什么事件? 读取 sqlconnStr = System.Configuration.ConfigurationManager.ConnectionStrings["channelwokestationConnectionString"].ConnectionString;
不刷新可能会在读取时仍读到旧数据
viki117 2012-12-10
  • 打赏
  • 举报
回复
刷新它作什么,难道还会触发什么事件? 读取 sqlconnStr = System.Configuration.ConfigurationManager.ConnectionStrings["channelwokestationConnectionString"].ConnectionString;
闭着眼刷牙 2012-12-10
  • 打赏
  • 举报
回复
引用 4 楼 viki117 的回复:
你要修改的字段,这个和你的config里面的文件结构有关, ConfigurationManager.RefreshSection("appSettings"); 这个方法还真没用过,不知道做什么的
修改后刷新一下
viki117 2012-12-10
  • 打赏
  • 举报
回复
你要修改的字段,这个和你的config里面的文件结构有关, ConfigurationManager.RefreshSection("appSettings"); 这个方法还真没用过,不知道做什么的
闭着眼刷牙 2012-12-10
  • 打赏
  • 举报
回复
引用 1 楼 viki117 的回复:
C# code?123System.Configuration.Configuration config = System.Configuration.ConfigurationManager.OpenExeConfiguration(System.Configuration.ConfigurationUserLevel.None); config.……
我修改config文件时这样的

Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
 cfa.AppSettings.Settings["NodeName"].Value = NodeName.Text;
cfa.Save();
ConfigurationManager.RefreshSection("appSettings");
闭着眼刷牙 2012-12-10
  • 打赏
  • 举报
回复
引用 1 楼 viki117 的回复:
C# code?123System.Configuration.Configuration config = System.Configuration.ConfigurationManager.OpenExeConfiguration(System.Configuration.ConfigurationUserLevel.None); config.……
那个中括号的是啥啊 我的修改用的是
cfa.Save();
                    ConfigurationManager.RefreshSection("appSettings");
viki117 2012-12-10
  • 打赏
  • 举报
回复

System.Configuration.Configuration config = System.Configuration.ConfigurationManager.OpenExeConfiguration(System.Configuration.ConfigurationUserLevel.None);
            config.ConnectionStrings.ConnectionStrings["channelwokestationConnectionString"].ConnectionString = sqlconnStr;
            config.Save();

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧