2016-11-20 91 views
1

我已经使用这个容器研究温莎城堡文档和计算器紧靠依赖分辨率现有的话题,但我仍然没有得到是否有可能(如果它是又如何?):城堡温莎多个服务注册

1)至寄存器例如接口的若干实施方式是这样的:

  container.Register(Component.For<IWait<IWebDriver>>().UsingFactoryMethod(ctx => SmallWait)); 
      container.Register(Component.For<IWait<IWebDriver>>().UsingFactoryMethod(ctx => MediumWait)); 
      container.Register(Component.For<IWait<IWebDriver>>().UsingFactoryMethod(ctx => LongWait)); 

`

,只是使用通过ResolveAll解决它或构造参数或字段自动地接收它。

2)删除容器中组件的注册?

回答

3
  1. 是的,这是可能的,你需要通过.Named()给他们唯一的ID。
  2. 不,不支持取消注册。这可能是对某些问题的直觉答案,但它从来都不是正确的答案。