Come posso impostare il percorso di base in ConfigurationBuilder in Core 2.0.
Ho cercato su Google e ho trovato questa domanda, questa da documenti Microsoft e 2.0 in linea, ma sembra che stiano usando una versione Microsoft.Extension.Configurationda 1.0.0-beta8 .
Voglio leggere appsettings.json. Esiste un nuovo modo per farlo in 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"
}
}
AGGIORNAMENTO:
Oltre ad aggiungere Microsoft.Extensions.Configuration.FileExtensions come indicato di seguito da Set, ho anche bisogno di aggiungere Microsoft.Extensions.Configuration.Json per ottenere l' AddJsonFileestensione.
Microsoft.Extensions.Configuration.Jsonha una dipendenza Microsoft.Extensions.Configuration.FileExtensions, quindi hai solo bisogno del primo.
AddJsonFile("appsettings.json")metodo non è a conoscenza del vostro ambiente di hosting! Usa .AddJsonFile($"appsettings.{_hostingEnvironment.EnvironmentName}.json")invece. : D