2009-02-10 54 views
1

我需要從引用程序集訪問Web應用程序的web.config。我需要獲取文件的路徑或配置對象。我無法像使用System.Reflection.Assembly.GetEntryAssembly一樣爲應用程序配置一個windows exe來做到這一點。如何從引用程序集訪問Web.config?

謝謝

回答

2

您可以使用System.Configuration程序集中的ConfigurationManager類。

但你不會得到的路徑,這是因爲配置了很多的配置文件(machin.config,幾個web.config文件等)

+0

謝謝,解決方案是正確的。 – 2009-02-10 22:14:44

6

我用下面的代碼在我的類庫的混合從配置文件中讀取:

using System.Configuration; 

... 

string value = ConfigurationManager.AppSettings.Get("myKey"); 
// returns null if the specified key does not exist 

這個工作在兩個網絡應用程序(web.config中)和Windows窗體/控制檯應用程序(application.exe.config)來讀取應用程序設置。

+1

謝謝,您的解決方案也可以工作,但Think Coding之前首先將我指向正確的方向!我會增加兩個接受的答案,但這是不可能的。 – 2009-02-10 22:12:31

2

這不是很好的做法,因爲它將太多的東西結合在一起。

而是將所需的配置設置從主機組件傳遞到它引用的任何組件。

通過這種方式,可以在不依賴配置文件的情況下構建和測試引用的程序集。