1

我們目前使用外部配置文件來管理我們的ASP.Net MVC應用程序中的某些配置。一些示例是appsettings,connectionStrings和日誌記錄配置。部署外部配置文件

我熟悉使用轉換來跨越不同的構建配置來更改Web.Config,但在使用外部配置文件時似乎沒有辦法執行這些轉換。

我還擔心爲每個環境創建單獨的構建配置可能沒有按照預期使用該功能 - 是一個構建配置(其默認包括調試和發佈)旨在表示部署環境(Dev,QA ,分期,製作)?

我們正在使用TeamCity,但我想象這個問題將適用於任何構建服務器。

是否有內置或推薦的方法來管理每個部署環境更改的外部/引用配置文件?這是應該在解決方案級別進行管理的東西,還是更多的是構建服務器的功能?

回答

0

選擇正確的配置設置是部署過程的一部分。任何體面的部署工具都提供了選擇和應用正確配置到您的部署所需的工具。例如這是如何Octopus handles it

但是,如果您不使用專用的部署引擎,則可以編寫自己的腳本來處理您的需求。您只需將標記放置在配置文件中,併爲每個環境定義字典,然後使用腳本決定在部署過程中將哪些字典應用於模板。我發現this implementation使用excel文件來保存值。恕我直言,其矯枉過正和excel文件不是非常差異化的友好。在大多數情況下,INI文件應該綽綽有餘。

+0

這可能也有幫助:http://ctt.codeplex.com/ – Mehran