Ich habe eine Klasse mit einem Konstruktor wie diesem
public class BlotterService : IBlotterService
{
public BlotterService(IAService aService, IAnotherService anotherService)
{
// ...
}
}
und registrierte Abhängigkeiten wie diese
// Default lifecycle is Singleton
Component.For<IAnotherService >().ImplementedBy<AnotherService >()
Component.For<IAService>().ImplementedBy<AService>() // instance 1 of AService
Component.For<IAService>().ImplementedBy<AService>().Named(
"aServiceAlternativeForBlotter") // instance 2 of AService
Component.For<IBlotterService>().ImplementedBy<BlotterService>()
Normalerweise, wenn Klassen, die IAService benötigen, instanziiert werden, möchte ich die erste Instanz von AService, jedoch im speziellen Fall von BlotterService, ich möchte Instanz 2 von AService.
Wie kann ich BlotterService/AService mit dem Schlosscontainer registrieren, um dies zu erreichen?
EDIT: Aktualisierung
Ich verwende Castle 2.5.1.0 und kann leider nicht aktualisieren.