Asp.net core 2.0 специфическая версия - PullRequest
0 голосов
/ 28 мая 2018

Я развертываю веб-API apt.net core 2.0 в качестве службы Windows.У меня есть файл appsettings для каждой из моих сред (например: appsettings.Development.json).

Однако мой файл настроек конкретной среды не загружается в мои конфигурации.Вот код:

        var pathToExe = Process.GetCurrentProcess().MainModule.FileName;
        var pathToContentRoot = Path.GetDirectoryName(pathToExe);       

        return WebHost.CreateDefaultBuilder(args)
                .UseContentRoot(pathToContentRoot)
                .ConfigureAppConfiguration((builderContext, config) =>
                {
                    IHostingEnvironment env = builderContext.HostingEnvironment;

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

                })
                .UseStartup<Startup>()
               .UseUrls(myUrl)              
               .Build();

Я попытался загрузить файл конфигурации для конкретной среды путем жесткого кодирования (код в комментарии) значения, КОТОРОЕ РАБОТАЕТ.Я также могу гарантировать отсутствие опечатки между именем моей среды и именем файла.

Имя моей среды задается с помощью переменной среды на компьютере dployment.

1 Ответ

0 голосов
/ 14 сентября 2018

второй .addJson должен быть

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

Вы пропустили $ перед строкой

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...