摘要:
如果我们已经知道了一个类所有的依赖项,在我们只需要依赖项的一个实例的场景中,在类的构造函数中引入一系列的依赖项是容易的。但是有些情况,我们需要在一个类里创建依赖项的多个实例,这时候Ninject注入就不够用了。也有些情况,我们不知道一个消费者可能需要哪个服务,因为他可能在不同的场合下需要不同的服务,而且在创建类的时候实例化所有依赖项也不合理。这样的情况,动态工厂可以帮忙。我们可以设计我们的类让他依赖一个工厂,而不是依赖这个工厂能够创建的对象。然后,我们能够命令工厂去通过命令创建需要的类型和任意需要的数量。下面两个例子解决上面两个问题。Ninject动态工厂创建指定数量的依赖项和创建指定类型的依赖项。 阅读全文