SCSF individuelle Dependency Injection
-
12-09-2019 - |
Frage
würde Ich mag / verbessern imitieren die Dependency Injection durch das Objekt Builder getan einige benutzerdefinierte Eigenschaften umfassen
die Standardmethode ist
in mySmartPart.cs
[CreateNew] MyPresenter ABC { .... }
[servicedependency] myService XYZ { ... }
in include [MyCustomReferenceAttribute] CustomerObject MyCustomer { .... }
etc.
Dies kann natürlich geschehen, nachdem der Smartpart erstellt wird, aber ich bin zu raten (in der Hoffnung?) Gibt es einen Ort, ich habe einig Code-Erweiterung anschließen kann das Nötige statt Wiederholen Sie den Code Everyplace zu tun !!!
Lösung
Einheit / ObjectBuilder verwendet eine Kette von Verantwortung Muster genannt seine Strategie Kette. Sie können Ihre eigenen Schritte in dieser Kette Plugin einige Anpassungen aus, wie Unity / ObjectBuilder hat seine Objektbau zu erhalten.
Hier ist mehr Informationen über das Design der Einheit: http: // msdn. microsoft.com/en-us/library/cc440939.aspx
Mein Bauch sagt, dass Sie wirklich große Teile der Einheit ersetzen wollen. Ich glaube, das würden Sie erfordern große Teile dieser Strategie Kette gut und ersetzen sie durch angepasste Versionen.
Je nachdem, was Sie versuchen zu erreichen, ist es möglich , die einfach Ihre Attribute von DependencyResolutionAttribute und nur in eine Strategie zum StrategyChain. Hier ist, wie die Standard-Strategien sind so konfigurieren (und auch die komplette Liste der Strategien im Einsatz in Unity: