2017-09-05 31 views
1

我有兩個項目,1.1.0 ASP.NET Core項目和對4.5.2項目的引用。從.NET 4.5.2項目訪問appsettings.json

我想從appsettings.json文件的值到我的4.5.2項目。 appsettings.json文件位於核心項目中。

var mailServer = ConfigurationManager.AppSettings["MailServer"]; 

如何從我的4.5.2項目訪問值:

沒有運氣嘗試這樣從我的4.5.2的項目?

回答

0

ConfigurationManager適用於具有specific format並且不知道如何讀取自定義JSON文件的基於XML的配置文件。

因爲你使用appsettings.json的ASP.NET核心項目,以及,你可以添加依賴於Microsoft.Extensions.ConfigurationMicrosoft.Extensions.Configuration.Json包和讀取使用「.NET的核心辦法」設置:

var builder = new ConfigurationBuilder() 
       .AddJsonFile(@"<path to appsettings.json>"); 

var configuration = builder.Build(); 
// configuration["MailServer"] 

當然,因爲appsettings.json是一個簡單的JSON文件,您可能總是直接使用任何JSON提供程序進行反序列化。

+0

使用SetBasePath是必要的,我的情況 VAR建設者=新ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile(文件路徑); – Dreeco