Primeiros passos com appsetting.json

Se precisar de mais informações, acesse documentação oficial da microsoft

Configuração simples

Adicione este texto ao appsettings.json

{
  "key1": "value1",
  "key2": 2,

  "subsectionKey": {
    "suboption1": "subvalue1"
  }
}

Agora você pode usar esta configuração em seu aplicativo, desta forma

public class Program
{
    static public IConfigurationRoot Configuration { get; set; }
    public static void Main(string[] args = null)
    {
        var builder = new ConfigurationBuilder()
             .SetBasePath(Directory.GetCurrentDirectory())
            .AddJsonFile("appsettings.json");
        Configuration = builder.Build();

        Console.WriteLine($"option1 = {Configuration["key1"]}");
        Console.WriteLine($"option2 = {Configuration["key2"]}");
        Console.WriteLine(
            $"option1 = {Configuration["subsectionKey:suboption1"]}");
    }
}

Usando o objeto de configuração para configurações

Crie uma classe como uma classe abaixo

public class MyOptions
{
    public MyOptions()
    {
        // Set default value, if you need it.
        Key1 = "value1_from_ctor";
    }
    public string Key1 { get; set; }
    public int Key2 { get; set; }
}

Então você precisa adicionar este código à sua classe de inicialização

public class Startup
{
    // Some default code here

    public IConfigurationRoot Configuration { get; set; }

    public void ConfigureServices(IServiceCollection services)
    {
        // Adds services required for using options.
        services.AddOptions();

        // Register the IConfiguration instance which MyOptions binds against.
        services.Configure<MyOptions>(Configuration);

    }
}

Então você pode usá-lo em seus controladores de uma maneira como a apresentada abaixo

public class TestController : Controller
{
    private readonly MyOptions _optionsAccessor;

    public TestController (IOptions<MyOptions> optionsAccessor)
    {
        _optionsAccessor = optionsAccessor.Value;
    }

    public IActionResult Index()
    {
        var key1 = _optionsAccessor.Key1 ;
        var key2 = _optionsAccessor.Key1 ;
        return Content($"option1 = {key1}, option2 = {key2}");
    }
}