3

是否可以让 Windsor 基于单独的参数返回不同的服务实现?

例如,如果我有一个具有 Role 属性的 User 对象,我希望能够根据 Role 的值不同地水合这个对象。我想使用 IUserService 来执行此操作,但 IUserService 的具体实现由 IoC 容器确定。

我认为 Ninject 将此功能作为“上下文绑定”提供,但我不确定 Windsor 是否在不滚动我自己的解析逻辑的情况下提供它?

4

1 回答 1

3

不,这是不可能的(还)。看看这里这里。现在看看 HandlerProvider 是否有你需要的东西。如果没有,您可能需要使用 ISubDependencyResolver(实际上并不是很复杂)。

于 2009-05-12T14:19:47.070 回答