我對.Net v2的.Net配置的.Net配置的各種配置選項感到困惑 - 特別是在考慮配置文件在UI /端的影響時鏈的用戶端。幫助瞭解.Net配置選項
因此,例如,一些應用程序的我,使我們與訪問使用設置工作:
string blah = AppLib.Properties.Settings.Default.TemplatePath;
現在,這個選擇似乎冷靜,因爲成員是stongly類型的,我不能鍵入Visual Studio 2005 IDE中不存在的屬性名稱。我們最終在一個命令行可執行項目的App.Config中這樣的臺詞:
<connectionStrings>
<add name="AppConnectionString" connectionString="XXXX" />
<add name="AppLib.Properties.Settings.AppConnectionString" connectionString="XXXX" />
</connectionStrings>
(如果我們沒有第二個設定,有人釋放一個DLL調試到直播盒可能已經建立其中嵌入調試連接字符串 - 克朗)
我們也有這樣的訪問設置:
string blah = System.Configuration.ConfigurationManager.AppSettings["TemplatePath_PDF"];
現在,這些似乎很酷,因爲我們可以從DLL的代碼訪問該設置,或EXE/aspx代碼,以及我們在Web或App.config中需要的全部內容是:
<appSettings>
<add key="TemplatePath_PDF" value="xxx"/>
</appSettings>
但是,當然值可能不會在配置文件中設置,或者字符串名稱可能錯誤輸入,所以我們有一組不同的問題。
因此......如果我的理解是正確的,前面的方法給出了強大的輸入,但dll和其他項目之間的值分享不好。後者提供更好的共享,但打字更弱。
我覺得我必須錯過一些東西。目前,我甚至不關心應用程序能夠將值寫回配置文件,加密或類似的東西。另外,我決定存儲任何非連接字符串的最佳方式是在數據庫中......然後,我必須做的下一件事是在數據庫連接問題的情況下將電話號碼存儲到文本人員,所以他們必須存儲在數據庫之外!
@rob_g遲來的感謝和'接受的答案'爲您的評論在這裏。我最終創建了一個設置數據庫表,每行一行。我認爲我沒有達到'完美的解決方案',但比以前好很多。 – Nij 2010-03-05 21:19:15