IoC - Suporte a múltiplas implementações para uma única interface

Eu estou querendo saber por que. Contentores IoC da Net não suportam facilmente múltiplas implementações para uma única interface! Pode ser que eu esteja errado, mas até onde eu vi, frameworks como Ninject suportam parcialmente este recurso usando anotações (como?). Eu não acho que outros frameworks como o Windsor ou o injetor simples tenham um mecanismo fácil para suportar esse cenário.

Existe alguma razão pela qual isso não é suportado por muitos frameworks? AFAIK, uma das razões mais importantes para usar interfaces é conseguir um acoplamento flexível. Se as estruturas projetadas para melhorar o acoplamento flexível, não suportam fluentemente múltiplas implementações para uma única interface, eu não entendo o porquê!

P.S. É claro que eu entendo que haverá um problema de resolução durante o tempo de execução, e o container pode ficar confuso com qual implementação escolher, mas isso é algo que deve ser considerado no design, certo?

questionAnswers(6)

yourAnswerToTheQuestion