我很難管理ASP.Net應用程序的配置,以便爲不同的客戶端部署。需要浪費的不同設置的龐大體積會佔用大量時間,而當前的配置方法太複雜,無法將此責任推給合作伙伴。如何管理ASP.NET中的應用程序配置?
任何關於更好的方法來處理這個或好的信息來源研究的建議?
我們如何在現在的事:
這些Web.Config中引用,例如AppSettings.xml- 各種XML配置文件。
- 特定站點的配置保存在重複的配置文件中。包含特定的網站
- 在某些情況下的數據,手動一次性更改名單溫莎IOC數據庫
- C#配置
- 文本文件。
我們遇到的具體問題:
- 不同部位具有不同特徵的啓用,我們必須跟和不同的業務規則不同的外部服務。
- 不同的部署類型(現場,測試,培訓)
- 配置密鑰不同版本進行更改(得到補充,刪除),這意味着我們必須更新所有的重複文件
- 我們仍然需要能夠改變鍵,在該應用程序是在我們如何處理這個運行
我們目前的想法是:
- 移動配置成動態編譯的代碼(可能是噓聲,Binsor或JavaScript)
- 有某種形式的版本比較/合併配置:用活/測試/培訓配置和特定的站點配置結合了默認配置
最後我去了一個合併配置系統。配置文件存儲在樹中。加載密鑰時,它首先查找最具體的版本(站點和部署類型),然後查看更多通用文件,直到找到密鑰。我從所有這些中學到的主要內容是,擁有您在源代碼管理中進行管理的所有配置是非常有幫助的。 – GlennS 2011-01-07 14:00:44