Я использую Castle Windsor для обработки инъекций Dependency Injection, и до сих пор он работал отлично.
Однако я сейчас пытаюсь расширить свой проект и добавить несколько дополнительных библиотек - сейчас я пытаюсь найти лучший способ использовать Castle.
В настоящее время у меня есть следующие сборки
MyProject.Interfaces (содержит интерфейс IDBContext)
MyProject.BusinessLogic (содержит реализацию Castle Windsor)
MyProject.DataAccess (содержит реализацию IDBContext)
В настоящее время у меня есть установщик DBContextInstaller, и он просто реализует следующее:
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.Register(AllTypes.FromThisAssembly()
.BasedOn<IDBContext>()
.WithService
.DefaultInterface()
.Configure(reg => reg.LifeStyle.PerWebRequest));
}
Теперь у меня есть новая сборка в этом проекте - давайте назовем ее MyProject.UserService, и у нее будет новая конкретная реализация IDBContext.
Итак, мой вопрос - как я могу изменить свой оператор Container.Register, чтобы он проверял несколько библиотек. ПРИМЕЧАНИЕ. Я ожидаю, что в будущем к этому сценарию будет добавлено все больше и больше библиотек. Я хотел бы, чтобы этот установщик просто нашел все реализации.
ТИА