В моето текущо решение имам 18 проекта и повечето от тях имат свои собствени конфигурационни файлове (app.config или web.config). Всеки проект използва един споделен BLL монтаж. Използвам Autofac за обработка на зависимости, но не съм дошъл с приличен начин за управление на моята конфигурация. Конфигурационните записи са приблизително еднакви, но стойностите са различни. Някои проекти използват потребителски конфигурационни секции, а други не.
Завърших с:
- Създайте единичен клас за стартиране на autofac, за да регистрирате всички зависимости освен обвивките на конфигурационния файл.
- Създайте отделно сглобяване (посочено от всички проекти) с интерфейс IConfiguration.
- Създайте собствена реализация на IConfiguration за всеки проект.
- Зависимости на Bootstrap на подходящото място на всеки проект чрез споделен bootstrapper.
- Регистрирайте собственото изпълнение на IConfiguration на проекта отделно след регистрацията за първоначално зареждане.
Аз съм много нов в Autofac и DI като цяло и се стремя да намеря добър баланс между сложност и разширяемост.
Има ли по-добри начини за управление на конфигурационните файлове?
Благодаря ти.