什么是IoC子容器以及它们是如何使用的?

g.f*_*ley 3 .net c# dependency-injection ioc-container

我听说人们在IoC中谈论子容器,当我谷歌它时,我回到这里的问题让我想知道它们是什么.

什么是IoC子容器以及它们是如何使用的?

Nic*_*rdt 9

该术语没有单一的定义 - 在一个容器中实现为"子容器"的东西在另一个容器中通常具有完全不同的逻辑功能.

在Autofac和一些类似的容器中,"子容器"(因为v2,只是"生命周期范围")是一种创建一个相关的组件集的方法,其生命周期比"父"容器短,因此解决了依赖关系只有从孩子到父母,从不相反.

其他容器有不同的实现,有些允许依赖解析双向(至少在我的理解中).你正在使用的特定容器是一个重要的额外信息,可以更加权威地回答这个问题.

希望这可以帮助!