Прочитайте файл appsettings.json, используя бессерверное приложение AWS в VS2017 - PullRequest
0 голосов
/ 12 февраля 2019

Я создал новое серверное приложение AWS (.NET Core) и настроил функцию Lambda, но я хочу прочитать некоторую информацию из файла appsettings.json, как если бы я делал обычное веб-приложение ASP.NET Core 2.Как я могу включить файл appsettings.json и прочитать настройки?У меня есть некоторые конечные точки, которые я хотел бы сохранить и не хочу жестко их кодировать в своем приложении.

d

1 Ответ

0 голосов
/ 24 марта 2019

Вы сделали бы это так же, как добавили бы систему конфигурации в любой основной проект, не относящийся к asp.

Добавьте следующие пакеты nuget в ваше безсерверное приложение:

Microsoft.Extensions.Configuration

Microsoft.Extensions.Configuration.Binder

Microsoft.Extensions.Configuration.Json

Затем добавьте файл конфигурации appSettings.json.Поскольку вы хотите, чтобы настройки были включены в опубликованный zip-файл, убедитесь, что для Copy to Output Directory установлено значение true.

. После этого вы можете написать код инициализации:

     public IConfiguration Configuration { get; private set; }

     private void ConfigureSettings()
        {
            Configuration = new ConfigurationBuilder()
                .AddJsonFile("appSettings.json", optional: true)
                .Build();
        }

Яслепая печать выше, так что, надеюсь, это работает.Если вы хотите использовать строго типизированный POCO вместо Конфигурации, вы можете использовать возможность Microsoft.Extensions.Configuration.Json, выполнив что-то вроде этого:

        public ApplicationConfigPoco Configuration
        {
            get
            {
                return Configuration.Get<ApplicationConfigPoco>();
            }
        }

Наконец, поскольку ваша Lambda работает на linux, помните об этом.чувствительность, которая не будет присутствовать в системе Windows.Например, appsettings.json не будет загружаться, если ваш файл appSetting.json.

...