Как получить строковый массив из основного файла консоли appSettings.json - PullRequest
0 голосов
/ 06 июня 2018

Как мне вернуть string[] из IConfigurationRoot объекта?

Файл существует и настроен на копирование для вывода

Код

var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("settings.json", optional: false, reloadOnChange: false);
_configuration = builder.Build();

var arr = _configuration["stringArray"]; // this returns null
var arr1 = _configuration["stringArray:0"]; // this works and returns first element

Настройки.json

{
  "stringArray": [
    "myString1",
    "myString2",
    "myString3"
  ]
}

1 Ответ

0 голосов
/ 06 июня 2018

Используйте расширение GetValue<TResult> для получения значения раздела.

// Requires NuGet package "Microsoft.Extensions.Configuration.Binder"
var array = _configuration.GetValue<string[]>("stringArray");

Или попробуйте привязать к разделу

var values = new List<string>();
_configuration.Bind("stringArray", values);

Ссылка Конфигурация в ASP.NET Core: привязка к графу объектов

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