你如何在Unity中使用多个typeConfigs?

时间:2011-08-03 12:26:10

标签: .net dependency-injection unity-container ioc-container

在统一中,在配置类型时,如果唯一命名,则可以指定多个typeConfig:

<type type="IFoo" mapTo="ConcreteFoo">
    <typeConfig name="rainbows">
        <constructor>
            <param name="magic" parameterType="string">
                <value value="rainbows"/>
            </param>
        </constructor>
    </typeConfig>
    <typeConfig name="unicorns>
        <constructor>
            <param name="magic" parameterType="string">
                <value value="unicorns"/>
            </param>
        </constructor>
    </typeConfig>
</type>

解析时,如何指定哪个typeConfig,以及因此注入构造函数的内容?

2 个答案:

答案 0 :(得分:1)

在DependencyAttribute中提供名称,如下所示:

[Dependency("unicorns")]

答案 1 :(得分:0)

当你调用container.Resolve时,你可以传递一个字符串。该字符串是您用于配置特定注册的名称。

此外,在配置注册时,您可以在注册中指定dependencyName,以告诉它您希望容器使用哪个命名注册。