我有一些全局設置 例如下面的一些是存儲應用程序全局設置的位置?
ShortLeaveAllowedInOneDay = 2
LeaveAllowedInMonth = 3
我有以下選項,這些全局設置
1店內存放在數據庫中的表
2存放在Webconfig文件
3-Store in class filed
4-In XML文件
請您建議我哪一個更好的辦法,爲什麼
我使用Asp.net MVC3 與SQLSERVER 2005
我有一些全局設置 例如下面的一些是存儲應用程序全局設置的位置?
ShortLeaveAllowedInOneDay = 2
LeaveAllowedInMonth = 3
我有以下選項,這些全局設置
1店內存放在數據庫中的表
2存放在Webconfig文件
3-Store in class filed
4-In XML文件
請您建議我哪一個更好的辦法,爲什麼
我使用Asp.net MVC3 與SQLSERVER 2005
它取決於您的要求,這些選項中的每一個都有它自己的優點和缺點。它試圖列出幾個:
1。在數據庫表中存儲
優點:
缺點:
2.存儲在web.config文件
優點:
缺點:
web.config
可能會導致應用程序池重新啓動。
3類商店爲const場
優點:
缺點:
4.在XML文件
優點:
log4net
就是這樣一個例子)缺點:
在web.config文件中存儲的全局變量是一種很常見的任務。 當您的web.config文件存儲值非常有用時,數據庫可能會過度殺傷,當您不需要單獨的外部文件。
爲每個頁面生命週期多次讀取.xml文件對於性能而言將會非常糟糕。
我肯定會去web.config。
如果你需要他們通過你的軟件的使用者,我不會做選項3.如果他們是你定義爲一個程序員,不要指望他們改變當應用程序投入生產你可以設置進行配置去做。
我要說的是選擇4和2基本上是相同的,在概念上,這是個人喜好從中選擇。我個人喜歡定義一個custom configuration section,然後在它自己的.config文件中定義該部分(this顯示瞭如何執行此操作),以便您沒有用戶必須導航的真正龐大的web.config。
我會選擇選項1,如果我有這樣一個場景,我有多個組件,所有需要訪問相同的配置。如果您構建的所有應用程序都是單個Web應用程序,那麼我不需要這樣做,但是,例如,如果您有一個Web應用程序和一些其他客戶端應用程序,並且都需要訪問數據庫,那麼在那裏存儲配置一個不錯的選擇。
添加在網絡配置文件的AppSettings的會話,可以從代碼直接訪問,如:
System.Configuration.ConfigurationManager.AppSettings["ShortLeaveAllowedInOneDay "];
編輯: 和Confir文件看起來像:
<appSettings>
<add key="ShortLeaveAllowedInOneDay " value="2" />
</appSettings>
無方法本質上比其他方法更好。
最好的辦法完全取決於你的需求是什麼的東西,如安全性,可擴展性,靈活性,只讀與可寫的,配置的複雜性,等等。
您可以將變量存儲在Web.config文件中。
我會更實際。兩個基本案例。
您將初始變量存儲在web.config中,並將所有其他數據存儲在數據庫中。如果你沒有數據庫,那麼可用的就是XML文件。
偉大的完整答案! – jorgebg 2012-09-27 10:12:35