簡體   English   中英

從.NET Source Project而不是從目標讀取配置文件

[英]Reading configuration file from .NET Source Project, not from target

在.NET解決方案中,我們可以從配置文件(例如web.configapp.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.

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