C# 如何克隆子组件的Windsor容器

C# 如何克隆子组件的Windsor容器,c#,inversion-of-control,castle-windsor,C#,Inversion Of Control,Castle Windsor,我们有一个引导加载程序,它加载一大堆子组件(单独的DLL)。引导加载程序在castle容器中插入许多子组件可以使用的基本服务 我们希望每个子组件完全独立于其他子组件,并希望为它们提供访问引导加载程序注册以及它们自己的子组件注册的便利,以便子组件不能覆盖/意外修改主容器(这可能会弄乱其他子组件) 为了实现这一点,我希望在子组件中使用主容器作为基础创建一个Windsor容器,然后让子组件容器完全接管组件管理的职责。但Windsor容器上没有允许这种情况的构造函数 这可能吗 我是否在错误地思考问题,需

我们有一个引导加载程序,它加载一大堆子组件(单独的DLL)。引导加载程序在castle容器中插入许多子组件可以使用的基本服务

我们希望每个子组件完全独立于其他子组件,并希望为它们提供访问引导加载程序注册以及它们自己的子组件注册的便利,以便子组件不能覆盖/意外修改主容器(这可能会弄乱其他子组件)

为了实现这一点,我希望在子组件中使用主容器作为基础创建一个Windsor容器,然后让子组件容器完全接管组件管理的职责。但Windsor容器上没有允许这种情况的构造函数

这可能吗


我是否在错误地思考问题,需要从另一个角度来看待它?

正如@Jakub所指出的,表明儿童容器并没有离开城堡

你检查过分包商了吗?它应该是您所需要的-有一个主容器,将其传递给模块,从每个模块注册一个子容器,模块在子容器中注册项目,但由于容器/子容器模块之间的链接,还可以解决主容器中的注册。是的,它们很快将从castle中移除(显然),所以我不想走这条路,但会进一步调查以确定。这很奇怪。我在网上又发现了一个不推荐使用的内容,但即使是最新的城堡xml也没有将AddChildContainer标记为不推荐使用。如果你发现更多,请在这里发布链接。谢谢,你好,Jakub,我看到了她的链接。那篇文章有两篇后续文章(链接在底部)。最后一个是这个。这应该会让问题变得更清楚一点:——)