В моем текущем решении у меня есть 18 проектов, и у большинства из них есть свои собственные файлы конфигурации (app.config или web.config). В каждом проекте используется одна общая сборка BLL. Я использую Autofac для обработки зависимостей, но у меня нет достойного способа управления моей конфигурацией. Записи конфигурации примерно одинаковы, но значения разные. В некоторых проектах используются настраиваемые разделы конфигурации, а в некоторых нет.
Я закончил с:
- Создайте один класс загрузчика autofac для регистрации всех зависимостей, кроме оболочек файла конфигурации.
- Создайте отдельную сборку (на которую ссылаются все проекты) с интерфейсом IConfiguration.
- Создайте собственную реализацию IConfiguration для каждого проекта.
- Зависимости начальной загрузки в соответствующем месте каждого проекта через общий загрузчик.
- Зарегистрируйте собственную имплементацию IConfiguration проекта отдельно после начальной регистрации.
Я очень новичок в Autofac и DI в целом и стремлюсь найти хороший баланс между сложностью и расширяемостью.
Существуют ли более эффективные способы управления файлами конфигурации?
Спасибо.