.NET Core 3.1 - игнор переменных среды окружения
От: senglory  
Дата: 27.08.20 17:51
Оценка:
Вот код:
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args).ConfigureAppConfiguration((hostingContext, config) =>
        {
            config.Sources.Clear();

            var env = hostingContext.HostingEnvironment;

            config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
                      .AddJsonFile($"appsettings.{env.EnvironmentName}.json",
                                     optional: true, reloadOnChange: true);

            config.AddEnvironmentVariables();

            if (args != null)
            {
                config.AddCommandLine(args);
            }
        });
    }
}


Рядом лежит и appsettings.Development.json и appsettings.Production.json. В студии переменная ASPNETCORE_ENVIRONMENT определена как Development

{
  "profiles": {
    "ConsoleApp1": {
      "commandName": "Project",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}


Так почему у меня в env.EnvironmentName оказывается всегда Production?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.