Я прочитал несколько вещей на этом сайте:
- Лучше всего настроить наш контейнер при запуске приложения
- Лучше избегать зависимости наших библиотек от инфраструктуры внедрения зависимостей
- Рекомендуется использовать фабрики для инициализации объектов, свойства которых определены во время выполнения
Я использую Ninject. Если я понимаю эти рекомендации, необходимо, чтобы:
- Мои библиотеки не используют NInject.dll
- Следовательно, мои NinjectModules должны быть определены в проекте моего приложения
- Мои фабрики (, созданные по этому принципу ) также должны быть определены в проекте моего приложения, а не непосредственно в библиотеке
Это кажется странным, особенно для заводов. У меня есть много проектов, которые используют одну и ту же библиотеку. Должны ли все эти проекты переопределять целевые модули и фабрики?
Что вы думаете?