Dependency injection Windsor Castle使用同一接口解决多个依赖项
问题: 类构造函数如下所示:Dependency injection Windsor Castle使用同一接口解决多个依赖项,dependency-injection,castle-windsor,Dependency Injection,Castle Windsor,问题: 类构造函数如下所示: public class ParsingRulesProvider : IParsingRulesProvider{ public ParsingRulesProvider(List<IParsingRule> rules){} } 问题: 如何在代码中注册: ParsingRulesProvider是否提供规则A和B? ParsingRulesProvider是否提供了所有实现IParsingRule的对象? 阿鲁尔和布鲁尔? AD1 AD2
public class ParsingRulesProvider : IParsingRulesProvider{
public ParsingRulesProvider(List<IParsingRule> rules){}
}
问题:
如何在代码中注册:
ParsingRulesProvider是否提供规则A和B?
ParsingRulesProvider是否提供了所有实现IParsingRule的对象?
阿鲁尔和布鲁尔?
AD1
AD2
AD3
请在您的答案中加入英语单词,描述代码及其如何回答问题。我看到三个寄存器,但无法解析特定组件。
public class ARule : IParsingRule{
public ARule(IASomeObject someObject){}
}
public class BRule : IParsingRule{
public BRule(IBSomeObject someObject){}
}
container.Kernel.Resolver.AddSubResolver(new ListResolver(container.Kernel, true));
container.Register(Component
.For<IParsingRulesProvider>()
.ImplementedBy<ParsingRulesProvider>());
container.Register(Component
.For<IParsingRule>()
.ImplementedBy<ARule>()
.LifeStyle.Singleton
.Named("ARule"));
container.Register(Component
.For<IParsingRule>()
.ImplementedBy<BRule>()
.LifeStyle.Singleton
.Named("BRule"));