Ich habe Konstruktor
%Vor% und ich kenne die Nummer nur während der Laufzeit, und ich möchte diesen Konstruktor während der Auflösung aufrufen und den someNumber
Wert und den IColor
automatisch lösen.
In etwa so:
%Vor%Ist es möglich, getan zu werden?
Ja, übergeben Sie die Konstruktorargumente in einer Instanz eines anonymen Typs; Die Eigenschaftsnamen müssen mit den Konstruktorparametern übereinstimmen:
%Vor%Wenn Sie eine ältere Version von C # verwenden, die keine anonymen Typen unterstützt (oder auch nicht), können Sie dasselbe mit einem Wörterbuch tun:
%Vor%Sie sollten Typed Factory bevorzugen, anstatt Container wie Service Locator zu verwenden. Definieren Sie einfach die Factory-Schnittstelle:
%Vor%und registrieren Sie es als getippte Fabrik:
%Vor%Verwenden Sie dann die Abhängigkeitsinjektion, um die Fabrik zu injizieren und sie zu verwenden:
%Vor%Für weitere Informationen lesen Sie die Windsor Dokumentation
Tags und Links .net c# castle-windsor