You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过代码修改App.Config中的自定义嵌套配置?

解决自定义配置节属性修改时的“配置只读”问题

为啥会报错?因为默认通过ConfigurationManager.GetSection获取的配置对象是只读的,直接改属性就会触发这个异常。

解决方法:

  • 先拿到可写的配置实例
    别再直接用GetSection了,先打开当前应用的配置文件,拿到可写的配置对象:
    Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
    // 这里把"ChartSettings"换成你自己的自定义配置节名称
    ChartSettingsSection customSection = (ChartSettingsSection)config.GetSection("ChartSettings");
    
  • 修改属性值
    现在就能正常改属性了:
    customSection.ChartName = "新的图表名称";
    
  • 保存更改
    改完一定要保存,不然修改不会写到配置文件里,还要刷新配置让后续读取生效:
    config.Save(ConfigurationSaveMode.Modified);
    ConfigurationManager.RefreshSection("ChartSettings");
    

注意事项:

  • 运行程序的账号得对配置文件有写入权限,不然保存会失败
  • 如果是Web项目,得用WebConfigurationManager.OpenWebConfiguration来获取可写配置对象

内容的提问来源于stack exchange,提问作者Fedor Yudin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 11:10:07