我有一個場景,其中數據庫/連接字符串需要在應用程序的web.config文件中進行更改,具體取決於應用程序當前所在的位置。也就是說,我的Dev Web服務器應該連接到我的開發數據庫。這同樣適用於我的測試和生產環境。通過一些研究,似乎web.config transformations正是我正在尋找的,但有一個潛在的問題。多個環境的Web.config轉換
我工作的公司使用自制方法來部署生產應用程序。它所做的是將測試環境中的文件(用戶選擇或計算差異)複製到產品環境。將使用web.config轉換仍然工作?
如果我要部署到測試,然後使用我們的工具「部署」到Prod,web.config文件的測試版本將被複制到右側?這是假設轉換在構建期間應用。
我想可以將Prod版本部署到Test中,然後在Prod部署後用適當的版本替換它,但這似乎很麻煩。我錯誤地轉變了工作方式嗎?這個奇怪的問題會是什麼聰明的解決方案?
我想這可能是一個問題。對於問題最後一段中提出的解決方案,您有什麼想法? – Jeff 2013-02-21 21:09:51
我不太明白你在最後一段提出的建議。在Test上部署Prod轉換,然後做一些替換?這似乎是錯誤的。做到這一點的正確方法是有一個MSBuild任務,它可以爲正確的環境生成正確的包,然後將每個包部署到其目標環境中。但是由於您使用的是家庭構建工具,因此您可以執行以下操作:可以在每臺服務器的相應machine.config中定義連接字符串,然後使用您在每個環境中部署的完全相同的軟件包。 – 2013-02-21 21:12:44
直觀的解決方案,但我沒有訪問machine.config。在我的公司,寫入生產服務器的唯一方法是使用此工具。我想出了一個非常簡單的解決方案。只需將適當的'web.config'文件轉換爲生產文件,而不再觸摸它。感謝您的幫助。這些信息對非工作項目很有用 – Jeff 2013-02-21 21:35:50