我如何将UnityContainer作为参数传递到Unity IOC xml配置文件中的注册

本文关键字:xml IOC Unity 配置文件 注册 参数传递 UnityContainer | 更新日期: 2023-09-27 18:04:28

我有一个工厂接口的实现,它使用IOC容器来创建对象。

容器是工厂的一个自动属性,理想情况下,我想在工厂注册的容器中注入这个属性。

为了清晰起见,我在下面描述了我希望它看起来像什么。

<container name="MyContainer">
    <register type="IControllerFactory" mapTo="UnityControllerFactory">        
        <property name="UnityContainer" value="MyContainer" />
    </register>
</container>    

当然,我在这之后注册了一个类,自动注入这个注册到它的IControllerFactory属性。

有办法做到这一点吗?

我如何将UnityContainer作为参数传递到Unity IOC xml配置文件中的注册

IUnityContainer默认为自己注册。你可以这样设置你的构造函数:

public UnityControllerFactory(IUnityContainer unityContainer) 
{
   this.unityContainer = unityContainer;
}

不需要额外配置....