Контекстное связывание с замком Виндзор - PullRequest
3 голосов
/ 12 мая 2009

Можно ли заставить Виндзор возвращать различные реализации службы на основе отдельного параметра?

Например, если у меня есть объект User, у которого есть свойство Role, я бы хотел по-разному увлажнять этот объект в зависимости от значения Role. Я хотел бы использовать IUserService для этого, но конкретная реализация IUserService определяется контейнером IoC.

Я думаю, что Ninject предлагает эту функцию как "привязку к контексту", но я не уверен, что Виндзор предлагает ее без использования собственной логики разрешения?

1 Ответ

3 голосов
/ 12 мая 2009

Нет, это невозможно (пока). Взгляните здесь и здесь . А пока взгляните на HandlerProvider, если он получил то, что вам нужно. Если нет, вам может потребоваться использовать ISubDependencyResolver (что на самом деле не очень сложно).

...