Предположим, у меня есть интерфейс IA
, две реализации A1
и A2
и зависимый класс 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)
{
...
}
}