IConfiguration (замените теги-заполнители перед возвратом значения)

Я читаю данные из таких файлов, как appsettings.json и appsettings.Production.json и т. Д. Через IConfiguration (.net 6).

Я хочу, чтобы значения, которые считываются необязательно, содержали теги-заполнители как часть этого значения в файле json и когда любой из методов, таких как

      _configuration.GetConnectionString("MyDb");
_configuration.GetSection("key");

используются эти заполнители заменяются другими значениями.

Их два способа, я могу подумать, что это может сработать. Если все значения из файлов конфигурации загружаются в память при запуске, возможно, можно будет зациклить эти значения и заменить заполнители фактическими значениями. Затем всякий раз, когда значение считывается, заполнитель уже удаляется.

Заставить внедрить зависимость некоторого настраиваемого класса, который наследует исходный класс, но переопределяет все методы, которые вызывают базовый метод, заменяют теги и затем возвращают результат.

Первый подход выглядит лучше всего, поскольку в противном случае необходимо было бы переопределить любой метод и расширение. В идеале я хочу изменить поведение возвращаемого значения, а не возвращать его, а затем заменять теги, поскольку у меня может не быть доступа к некоторому коду, считывающему настройки.

Любая помощь будет оценена

0 ответов

Другие вопросы по тегам