簡介
SlowCheetah 能滿足不同模式下編譯產生不同 app.config 配置的需求,已被微軟納入麾下,支援XML,JSON格式。
下面我們用XML的格式來試試如何使用SlowCheetah,JSON方式暫未研究。
安裝
-
nuget 安裝 SlowCheetah,選擇微軟Microsoft那個
-
開啟 vs 擴充套件商店安裝外掛 SlowCheetah
使用
-
右鍵 app.config 檔案,選擇
Add Transform
,產生各個編譯模式的 app.config 變體檔案
選擇 Add Transform
產生變體檔案 -
新增兩個配置項做測試,一個使用者配置,一個應用程式配置
Settings 檔案
App.config 檔案 -
修改 App.Release.config。將 App.config 裡的配置資訊複製過去,增加
xdt:Transform="Replace" xdt:Locator="Match(name)”
表示找到 name 相同的xml節點,替換原值value -
預覽異同。右鍵 App.Release.config ,選擇
Preview Transform
。預覽你編寫的Release配置是否正確生效
選擇 Preview Transform
檢視異同 -
好了,切換 Release 模式編譯試試吧
要修改的配置在引用的專案裡怎麼辦?
例如下方這個專案引用了一個Device的專案,直接右鍵Device的app.config檔案新增變體,在編譯主專案時,Device 裡的變體是無效的。
對比最終編譯出的 app.config,可以發現需要插入一些節點,於是有了以下方案
- 插入一條 name 為 Device.Properties.Settings 的 section 節點
- 插入一條 Device.Properties.Settings 節點
- 注意
xdt:Transform="Insert”
屬性表示該位置插入一個節點