Profile modification of software automatic release automation

Time:2020-2-11

In. Net platform, there are two kinds of configuration files: web.config and app.config. The former is the configuration file of Web site, and the latter is the configuration file of WinForm application. The basic library provides good support for reading these two kinds of configuration files.
However, the modification of the file itself is not very well supported. In the recent period of time, the automatic publishing tool for. Net application is prepared. When the version is published, the configuration file needs to be automatically modified. After querying the solution, the following modification methods are found:

  • XML parsing method

This method requires the configuration personnel to understand the XML DOM structure, be familiar with the XPath syntax, be difficult to use, relatively complex to configure, and fully develop independently.

  • XDT Transformation tool

In this way, the configuration is flexible and XDT transform is used

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

Tool source address:

https://github.com/cdzhoubin/Config-Transformation-Tool

  • ConfigMerge

This method is specially used to merge two configuration files. The content of the new configuration file can be added, deleted, and modified. Users do not need to understand the XPath syntax, but directly use the same file structure as the modified source. It is simple and easy to use. The online source library address is as follows:
https://github.com/loftum/ConfigMerge
Consolidation method:
Example transformation

App.root.config:

 

 App.override.config:

 

 

Result:

 

 

In order to use this tool better, I need this tool to support both command line and WinForm (configuration management function). I refactored this tool and wrote WinForm program. The effect is as follows:

 

 

Newly added

 

merge

 

Source address: https://github.com/cdzhoubin/configmerge

This WinForm applet, including the use of ErrorProvider control, the use of general property verification, such as (stringlength, required), etc., the two-way binding of data and control, etc

If you are interested, you can pay more attention to the public address for more articles.

 

Recommended Today

Laravel service container must know

The article was forwarded from the professional laravel developer community. Original link: https://learnku.com/laravel/t To learn how to build an application with laravel is not only to learn how to use different classes and components in the framework, but also to remember allartisanCommand or all helper functions (we have Google). Learning to code with laravel is […]