[英]Reading configuration file from .NET Source Project, not from target
在.NET解決方案中,我們可以從配置文件(例如web.config
或app.config
讀取設置。 但是我在使用這些資源時發現了一個問題。 在一個解決方案中,我創建了一個類庫項目和一個ASP.NET項目,它們兩個都有一個“ something.config”文件。 在類庫中,它稱為App.Config
,而在ASP.NET中,它稱為Web.config
。
我在類庫項目的類中創建了一個方法,並在ASP.NET中調用了該方法。 這些方法從app.config
獲取一些設置,但是如果我嘗試在Web項目中使用ASP.NET項目中從web.config
讀取的方法,那是不希望的。
如何使類庫項目中的方法從相應項目而不是Web項目中讀取App.Config
?
這取決於您正在運行的應用程序。
Web應用程序是入口點,因此它將使用web.config。
您可以將app.config中包含的值/部分放入web.config中,然后將其讀取。
挖掘完配置管理器類后,我添加了以下內容以讀取與程序集關聯的配置文件。
var config = ConfigurationManager.OpenExeConfiguration(Assembly.GetExecutingAssembly().Location);
var tempValue = config.AppSettings["setting_name"];
默認情況下,不會加載放置在類庫項目中的App.config
。 唯一將加載的配置文件是客戶端配置( web.config
)。
配置項目以加載本地類庫配置文件app.config
。
您需要以下代碼來做到這一點:
ConfigurationManager.OpenMappedExeConfiguration(
new ExeConfigurationFileMap() {
ExeConfigFilename = path + "app.config"
}, ConfigurationUserLevel.None);
有關更多詳細信息,請訪問此答案 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.