该配置是只读的

在学习.net 2.0 Configuration时,遇到了一点小麻烦,在Save Configuration时,总是提示【该配置是只读的】。

经过一番调试,发现自己的代码写的有问题,总结如下:

错误的代码:
   Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

   MySettings settings = ConfigurationManager.GetSection("mySection") as MySettings;
   settings.MaxValue = 100;
   config.Save();

正确的代码:
   Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

   MySettings settings = config.GetSection("mySection") as MySettings;
   settings.MaxValue = 100;
   config.Save();

不经意间,使用了ConfigurationManager.GetSection方法获取配置的信息,虽然可以正确的读取配置的内容,但这个配置信息表现为只读特性。需要使用Configuration的实例,才能正确的写入配置的信息。

原文地址:https://www.cnblogs.com/scdsun/p/600014.html