Asp.net

使用類庫從 web.config/app.config 獲取配置設置

  • July 1, 2015

3.5 中的配置設置讓我抓狂……救命!;)

我有一個類庫(名為 ADI),它需要使用它的項目中的一些配置設置(如連接字元串、文件系統位置等)。

我想在我的 Windows 窗體/Web 項目 App.Config 或 Web.Config 中定義這些設置,就像其他設置一樣。

這是我的 Windows 窗體應用程序的 app.config 的一部分:

<applicationSettings>
   <PhotoImportRobot.My.MySettings>
     <setting name="ADIImageRoot" serializeAs="String">
       <value>C:\DataTemp\ADI\Original\</value>
     </setting>
     <setting name="ADIImageVariantsRoot" serializeAs="String">
       <value>C:\DataTemp\ADI\Variants\</value>
     </setting>
   </PhotoImportRobot.My.MySettings>
</applicationSettings>

我如何從我的類庫中訪問它?

我試過這個:

System.Configuration.ConfigurationManager.AppSettings("ADIImageVariantsRoot")

該怎麼辦?

如果您不關注結構化設置,則 appSettings 部分僅採用鍵值對:

<appSettings>
 <add key="ADIImageRoot" value="C:\DataTemp\ADI\Original\" />
 <add key="ADIImageVariantsRoot" value="C:\DataTemp\ADI\Variants\" />
</appSettings>

這將使您能夠通過 AppSettings 字典訪問它們:

ConfigurationManager.AppSettings["ADIImageVariantsRoot"]

如你所料。

或者,如果您需要更多的配置結構(即不僅僅是字元串或設置集合),您可以考慮使用自己的配置部分,使用ConfigurationSection及其相關部分。

引用自:https://stackoverflow.com/questions/685259