【发布时间】:2011-06-08 07:57:37
【问题描述】:
我的容器配置如下:
container = new UnityContainer()
.RegisterType<IA, A>()
.RegisterType<IB, B>()
.RegisterType<IC, C>(new InjectionConstructor(strA));
我需要的是,我想注册另一个 C 实例,例如:
container.RegisterType<IC, C>(new InjectionConstructor(strB));
注意 strA 和 strB 之间的区别。
A 和 B 都需要 C。但我希望 A 使用第一个 C,B 使用第二个 C。
Unity 中是否有适当的方法来实现这一点?
谢谢
【问题讨论】:
-
乍一看,strA 和 strB 应该是 A 和 B 上的一个属性,并由 C 传递/评估。
-
我喜欢这样。这应该是正确的方法。
标签: c# dependency-injection unity-container containers