在构造函数参数中指定依赖项实现

问题描述 投票:0回答:1

假设我有一个接口IA,两个实现A1A2以及依赖于B的依赖类IA。 Windsor容器中相同接口的两个实现注册如下:

container.Register(Component.For<IA>()
    .ImplementedBy<A1>());
container.Register(Component.For<IA>()
    .ImplementedBy<A2>());

有没有办法指定在依赖类B中使用哪个实现?

例如在Autofac中,我可以像这样使用KeyFilterAttribute

class B 
{
    ...
    public B([KeyFilter("A1")]IA a)
    {
        ...
    }
}
.net inversion-of-control castle-windsor
1个回答
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.