如何在 Core 2.0 的 ConfigurationBuilder 中设置基本路径。
我在 Google 上搜索并找到了这个问题,这个问题来自 Microsoft 文档和2.0在线文档,但他们似乎使用的是Microsoft.Extension.Configurationfrom 1.0.0-beta8的版本。
Microsoft.Extension.Configuration
我想读书appsettings.json。在 Core 2.0 中是否有新的方法来做到这一点?
appsettings.json
using System; using System.IO; using Microsoft.Extensions.Configuration; namespace ConsoleApp2 { class Program { public static IConfigurationRoot Configuration { get; set; } static void Main(string[] args) { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) // <== compile failing here .AddJsonFile("appsettings.json"); Configuration = builder.Build(); Console.WriteLine(Configuration.GetConnectionString("con")); Console.WriteLine("Press a key..."); Console.ReadKey(); } } }
appsetting.json
{ "ConnectionStrings": { "con": "connection string" } }
更新: 除了添加如下所示的Microsoft.Extensions.Configuration.FileExtensions外,我还需要添加Microsoft.Extensions.Configuration.Json以获取AddJsonFile扩展名。
AddJsonFile
SetBasePath扩展方法在Config.FileExtensions中定义。
SetBasePath
您需要添加对Microsoft.Extensions.Configuration.FileExtensions包的引用。
要解决AddJsonFile,请添加对Microsoft.Extensions.Configuration.Json包的引用。
Microsoft.Extensions.Configuration.Json