应该使用ctor传递多少个依赖项?

时间:2010-10-16 10:33:01

标签: dependency-injection ninject

如果我有A类依赖于B类,那么B类可以传入A类的ctor。

如果B类依赖于C类,这是否意味着A类应该在构造时获得所有必需的依赖?

1 个答案:

答案 0 :(得分:4)

一般而言,依赖注入会建议您的类应该已经传递了构造函数中的所有依赖项。

然而,对于你的例子,在我看来,A依赖于B而B依赖于C.换句话说,A只需要在构造函数中传递B;因为B已经使用C实例构建。换句话说,如果我们在没有DI框架的情况下编写代码:

 C c = new C();
 B b = new B(c);
 A a = new A(b);