簡體   English   中英

存儲.NET應用程序設置的位置

[英]Where to store .NET application settings

我有一個.NET應用程序需要引用一個全局應用程序變量,一個數字,應用程序使用該數字允許/禁止用戶在日期之前輸入事件。 目前我有

<appSettings>
    <add key="beginDateRangeDays" value="60" />
    <add key="endDateRangeDays" value="30" />
</appSettings>

在我的Web.config中。 我希望管理員用戶能夠通過管理員網頁定期修改這些值。 如果我允許這樣做,每次他們進行更改時,我的應用程序池都會重新啟動。

你會在哪里推薦存儲這個? 在外部配置文件中? 但這會導致應用程序池重啟嗎? 我應該在應用程序的數據庫中使用配置表嗎?

我希望管理員用戶能夠通過管理員網頁定期修改這些值

絕對是數據庫。 配置文件是存儲非靜態值的便利位置,但並不總是最佳位置。 退一步,考慮兩個這樣的價值觀“桶”:

  1. 用戶可以在應用程序的任何給定實例中更改的邏輯配置。
  2. 基礎結構配置, 定義應用程序的任何給定實例以及它與周圍環境的關系。

前者最好保存在應用程序的數據庫中,后者最好保存在配置文件中。 前者可能包含以下值:

  • 今年的商務假期
  • 用於計算業務數據的值
  • 用戶表單的默認值

而后者可能包含以下值:

  • 數據庫連接字符串
  • 外部Web服務的URL
  • 服務帳戶的憑據

讓用戶在不破壞應用程序的情況下更改可以更改的內容,並在數據庫中跟蹤這些更改。 保留配置文件中的基礎結構詳細信息,因為對這些詳細信息的更改很可能需要重新啟動應用程序池。

您應該能夠設置應用程序設置,以便它們在IIS中可編輯。 請參閱此TechNet文章:

http://technet.microsoft.com/en-us/library/cc753062(v=ws.10).aspx

如果將它存儲在數據庫中,那么您可以控制誰訪問它以及何時訪問它。 然后您不必擔心重新啟動應用程序池。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM