#c# #json #configuration
Вопрос:
Т. е. я хочу передать свой код IConfigurationRoot
объекту и проверить, что он перезагружается, не издеваясь над всей конфигурацией. В остальных моих тестах я загружаю конфигурацию из встроенного ресурса JSON. Поэтому моя текущая идея для этого интеграционного теста состоит в том, чтобы загрузить ресурс JSON, изменить конфигурацию в памяти, а затем убедиться, что он перезагружает значения из источника JSON.
Моя проблема в том, что я использую JsonStreamConfigurationSource
для чтения встроенный ресурс (что кажется наиболее естественным способом), но этот поток можно прочитать только один раз. Reload
бросает это:
System.InvalidOperationException StreamConfigurationProviders cannot be loaded more than once.
Я полагаю, что одной из альтернатив было бы сохранить JSON в файл, а затем использовать JsonConfigurationProvider
для чтения из этого файла. Это просто кажется действительно уродливым. Есть ли более приятный способ загрузить мой ресурс JSON более одного раза?