2012-07-25 137 views
2

Greetings StackOverflow,使用Properties.Settings.Default和設置備用配置文件?

在過去的項目中,我已經習慣了使用Visual Studio中的設置設計器來設置文件。這在過去運作良好。在我的最新項目中,我希望擁有同一個Settings類的多個版本a.k.a.配置文件,其中一個包含所有屬性的生產/默認值,另一個包含測試值。

雖然在搜索中看到這是否可能,但我注意到在Settings.settings文件的XML中有多個提示可能有多個設置配置文件。例如在Settings.settings文件中,<SettingsFile>標籤的CurrentProfile屬性始終設置爲CurrentProfile="(Default)"。該標籤內部有一個名爲<Profile />的空標籤。最後,每個設置的<Value>標記具有Profile屬性,通常顯示Profile="(Default)"

現在,我試着尋找<Profile />標籤的全部內容,以及我是否可以將它用於某些內容,但是我的搜索沒有提供任何內容。

最後,我想知道是否有一種方法可以有相同的設置類的不同的配置文件,每個都有它自己的默認值,這樣我可以用它可能會出現像這樣在我的代碼:

Properties.Settings defaultSettings = Properties.Settings.Default; 
Properties.Settings testSettings = Properties.Settings.Test; 

如果有人知道在哪裏可以找到設置文件的XML Schema,或者如果我所要求的是可能的,請告訴我。

回答

1

我使用Enterprise library來設置不同的配置與不同的開發環境。它需要一些習慣,但有一個很好的配置工具,可以讀取配置文件並顯示所有的應用程序設置。您可以爲您計劃使用的每個環境創建增量文件。我加入了合併配置可執行到項目內的的lib文件夾並加入一些生成事件在構建做合併,這樣的文件是自動部署準備突破的是:

"$(ProjectDir)lib\MergeConfiguration.exe" "$(ProjectDir)web.config" "$(ProjectDir)lib\Delta_Dev.dconfig" "$(ProjectDir)Configurations\web.config-dev.config"