Во внешней библиотеке у меня есть контроллер, который требует двух зависимостей хранилища.Конструктор по умолчанию хорошо разрешает эти зависимости, вызывая простую фабрику для создания зависимостей.Я хочу предоставить подписчикам моей библиотеки возможность переопределять любые зависимости, но использовать зависимости по умолчанию, когда они не переопределены.
Так, например,
public class LibraryController {
public LibraryController(IRepository1 repo1, IRepository2 repo2) {
}
}
Они могутпереопределить IRepository1
, но не IRepository2
.Я либо недостаточно понимаю Dependency Injection
, либо просто что-то здесь упускаю.
Я не хочу навязывать зависимости Ninject
, StructureMap
или Unity
для создания зависимостей по умолчанию,Как я могу сделать это без этого?
Редактировать: я мог бы просто создать несколько конструкторов на основе разных параметров, но я надеялся на другое решение.