.net 平台中,配置文件有web.config和app.config两种,前者是web站点的配置文件,后面是winform应用的配置文件,基本库对这两种配置文件的读取提供很好支持。
但对文件本身的修改支持的不是太好,最近这段时间准备做.net应用的自动发布工具,在版本发布时,需要进行配置文件的自动修改,经过查询解决方案找到如下几种修改方法:

  • xml解析方式

这种方式要求配置人员了解xml dom结构,熟悉xpath语法,使用起来难度比较大,配置起来相对复杂,需要完全自主开发。

  • xdt transformation tool

此种方式配置灵活,使用 xdt transform engine,可以应用于任意xml文件的解析,需要学习xdt转换语法,可参考文档:

https://docs.microsoft.com/en-us/previous-versions/aspnet/dd465326(v=vs.110)?redirectedfrom=msdn

工具源码地址:

https://github.com/cdzhoubin/config-transformation-tool

  • configmerge

此种方式专门用于,合并两个配置文件,新配置文件的内容,可以是新增,删除,修改旧的配置文件内容,用户不用了解xpath语法,直接使用与修改源相同的文件结构就可以,简单易用,网上的源码库地址如下:
https://github.com/loftum/configmerge
合并方法:
example transformation

app.root.config:

 

 app.override.config:

 

 

result:

 

 

为了更好的使用这个工具,我需要这个工具即支持命令行的方式工作,也支持winform的方式工作(提供配置管理功能),我对此工具作了重构,并写了winform程序,效果如下所示:

 

 

新增

 

 合并

 

源码地址:https://github.com/cdzhoubin/configmerge

此winform小程序,包括errorprovider控件使用,通用属性检验的使用,如(stringlength,required)等等,数据与控件的双向绑定等

如对此感兴趣,可以关注公众号获取更多文章信息。