Leniwa zależność wtrysku

Mam projekt, w którym Ninject jest używany jako kontener IoC. Obawiam się, że wiele klas ma takich konstruktorów:

[Inject]
public HomeController(
    UserManager userManager, RoleManager roleManager, BlahblahManager blahblahManager) {
   _userManager = userManager;
   _roleManager = roleManager;
   _blahblahManager = blahblahManager;
}

Co zrobić, jeśli nie chcę mieć wszystkich wystąpień tych klas naraz?

Sposób, w jaki wszystkie te klasy są zapakowaneLazy<T> i przekazany do konstruktora nie jest dokładnie tym, czego potrzebuję. TheT instancje nie są jeszcze tworzone, aleLazy<T> instancje są już przechowywane w pamięci.

Mój kolega sugeruje mi, żebym użył wzorca Factory do kontrolowania wszystkich instancji, ale nie jestem pewien, czy IoC ma tak wielki błąd projektowy.

Czy istnieje obejście tej sytuacji lub IoC naprawdę ma tak duży defekt w swoim projekcie? Może powinienem użyć innego kontenera IoC?

Jakieś sugestie?

questionAnswers(3)

yourAnswerToTheQuestion