Як я можу встановити базовий шлях у ConfigurationBuilder в Core 2.0.
Я гугл і знайшов цей питання, це з документації Microsoft, і 2.0 документів в Інтернеті , але вони , здається, використовують версію Microsoft.Extension.Configurationз 1.0.0-beta8 .
Я хочу читати appsettings.json. Чи є новий спосіб зробити це в Core 2.0?
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, як зазначено нижче в Set I, мені також потрібно було додати Microsoft.Extensions.Configuration.Json, щоб отримати AddJsonFileрозширення.
Microsoft.Extensions.Configuration.Jsonмає залежність від Microsoft.Extensions.Configuration.FileExtensions, тому вам просто потрібна перша.
AddJsonFile("appsettings.json")метод не знає про ваше середовище хостингу! Використовуйте .AddJsonFile($"appsettings.{_hostingEnvironment.EnvironmentName}.json")замість цього. : D