惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Vulnerabilities – Threatpost
U
Unit 42
F
Fortinet All Blogs
aimingoo的专栏
aimingoo的专栏
P
Proofpoint News Feed
F
Full Disclosure
月光博客
月光博客
Engineering at Meta
Engineering at Meta
博客园_首页
The Register - Security
The Register - Security
G
Google Developers Blog
The Cloudflare Blog
博客园 - Franky
K
Kaspersky official blog
A
Arctic Wolf
Scott Helme
Scott Helme
C
Cisco Blogs
Hugging Face - Blog
Hugging Face - Blog
C
Check Point Blog
NISL@THU
NISL@THU
AI
AI
D
DataBreaches.Net
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Stack Overflow Blog
Stack Overflow Blog
Project Zero
Project Zero
The GitHub Blog
The GitHub Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
量子位
Vercel News
Vercel News
T
Tor Project blog
P
Privacy International News Feed
D
Docker
I
Intezer
L
LangChain Blog
P
Proofpoint News Feed
Security Latest
Security Latest
C
CXSECURITY Database RSS Feed - CXSecurity.com
T
Threatpost
博客园 - 聂微东
AWS News Blog
AWS News Blog
Martin Fowler
Martin Fowler
P
Privacy & Cybersecurity Law Blog
V
V2EX
Last Week in AI
Last Week in AI
C
Cybersecurity and Infrastructure Security Agency CISA
The Hacker News
The Hacker News
T
Tenable Blog
Blog — PlanetScale
Blog — PlanetScale
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tailwind CSS Blog

博客园 - cdboy

.Net8新特性 EF Core 中原生SQL、存储过程、视图的使用 EF Core DBFirst 和Code First小结 Logstash日志搜集 Windows Service插件服务开源 Linq通用分页数据查询方法 .Net 通用配置文件读取方法 Asp.net 主题中CSS文件的缓存问题 Asp .net 4.0 中ViewStatus 使用 RssTookit使用小结 Windows Live Writer 分享到插件 Windows Resx资源文件编辑工具 IIS 7 中设置文件上传大小限制设置方法 多语言资源文件帮助 转帖:正则表达式的与或非 vs2010使用PostSharp 1.5 window service 插件服务插件开发 插件式服务架构 多语言资源工具之制作类库资源文件
软件自动发布自动化之配置文件修改
cdboy · 2019-12-11 · via 博客园 - cdboy

.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)等等,数据与控件的双向绑定等

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