Visual Studio 生产环境配置方案:SlowCheetah

原文

SlowCheetah 能满足你不同编译模式产生不同 app.config 配置的需求,已被微软纳入麾下,支持XML,JSON格式。

下面我们用XML的格式来试试如何使用SlowCheetah,JSON方式还没研究。

安装

  1. nuget 安装 SlowCheetah,选择微软Microsoft那个
    Visual Studio 生产环境配置方案:SlowCheetah

  2. 打开 vs 扩展商店安装插件 SlowCheetah
    Visual Studio 生产环境配置方案:SlowCheetah

使用

  1. 右键 app.config 文件,选择 Add Transform,产生各个编译模式的 app.config 变体文件

    Visual Studio 生产环境配置方案:SlowCheetah
    选择 Add Transform

    Visual Studio 生产环境配置方案:SlowCheetah
    产生变体文件

  2. 添加两个配置项做测试,一个用户配置,一个应用程序配置
    Visual Studio 生产环境配置方案:SlowCheetah
    Settings 文件

    Visual Studio 生产环境配置方案:SlowCheetah
    App.config 文件

  3. 修改 App.Release.config。将 App.config 里的配置信息复制过去,增加 xdt:Transform="Replace" xdt:Locator="Match(name)” 表示找到 name 相同的xml节点,替换原值value

    更多xml语法参考 http://go.microsoft.com/fwlink/?LinkId=214134
    Visual Studio 生产环境配置方案:SlowCheetah

  4. 预览异同。右键 App.Release.config ,选择 Preview Transform。预览你编写的Release配置是否正确生效
    Visual Studio 生产环境配置方案:SlowCheetah
    选择 Preview Transform

    Visual Studio 生产环境配置方案:SlowCheetah
    查看异同

  5. 好了,切换 Release 模式编译试试吧

要修改的配置在引用的项目里怎么办?

例如下方这个项目引用了一个Device的项目,直接右键Device的app.config文件添加变体,在编译主项目时,Device 里的变体是无效的。

对比最终编译出的 app.config,可以发现需要插入一些节点,于是有了以下方案

  1. 插入一条 name 为 Device.Properties.Settings 的 section 节点
  2. 插入一条 Device.Properties.Settings 节点
  3. 注意 xdt:Transform="Insert” 属性表示该位置插入一个节点
    Visual Studio 生产环境配置方案:SlowCheetah
发表评论

相关文章