übergibt einen Teil der Konstruktorparameter an den windsor-Container der Burg

7

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?

    
Night Walker 30.07.2012, 17:38
quelle

2 Antworten

7

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%     
phoog 30.07.2012, 17:57
quelle
18

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

    
Aleš Roubíček 31.07.2012 06:52
quelle

Tags und Links