Я только что использовал IoC в очень маленьком проекте с одним объектом, который мне нужно было проверить.Сейчас я начинаю реализовывать его в более крупном существующем проекте, и я в чем-то не уверен.
Скажем, у меня есть два бизнес-объекта Student
и Teacher
, оба имеют внедрение конструктора для интерфейса, называемого IUnitOfWork
у которого есть конкретные экземпляры SQLUnitOfWork
или InMemoryUnitOfWork
.
Так что, если я использую эту библиотеку, я могу использовать IoC для создания своего объекта, не беспокоясь, но что происходит, когда я хочу использовать один внутриДругой?Скажем, я лениво загружал свойство Student.Teacher
и мне нужно получить новый объект Teacher
, как мне это сделать?
Что-то не так в использовании контейнера IoC для достижения этой цели, нотакже не имеет конкретных объектов.Использование IoC для каждого используемого объекта кажется чрезмерным.