Как создать иерархическую конфигурацию в памяти в .Net Core - PullRequest
0 голосов
/ 12 марта 2019

Я хотел бы создать иерархическую конфигурацию в памяти по принципу использования вложенного словаря для заполнения IConfiguration. Мой нынешний подход примерно такой.

У меня есть такой словарь:

var inMemConfig = new Dictionary<string, object>();
inMemConfig["section1"] = new Dictionary<string, string>();
inMemConfig["section2"] = new Dictionary<string, object>();
inMemConfig["deepNest"] = new Dictionary<string, object>();
// Excluding a cast below: 
inMemConfig["deepNest"]["list"] = new List<Dictionary<string, string>>();
inMemConfig["deepNest"]["dict"] = new Dictionary<string string>();

После заполнения вышеуказанного словаря я пытаюсь использовать ConfigurationBuilder, как показано ниже.

var builder = new ConfigurationBuilder();
var configuration = builder.AddInMemoryCollection(inMemConfig).Build(); 

Это, очевидно, приводит к ошибке компилятора, что inMemConfig должен иметь тип: IEnumerable<KeyValuePair<string, string>>.

Разве нельзя создавать иерархические конфигурации в памяти, и если да, то любые указатели в правильном направлении очень ценятся. Спасибо.

...