Ist es möglich, DI in Ihren Workflow-Aktivitäten zu verwenden? und wenn ja, wie?Abhängigkeitsinjektion/IoC in Workflow Foundation 4
Zum Beispiel, wenn Sie eine Aktivität wie
habenpublic sealed class MyActivity : CodeActivity
{
public MyClass Dependency { get; set; }
protected override void Execute(CodeActivityContext context)
{
Dependency.DoSomething();
}
}
, wie ich Dependency
einstellen kann?
(Ich verwende Spring.Net)
Sie können auch einen einfachen DI-Container als Erweiterung hinzufügen und ihn über den Kontext Ihrer Execute-Methode leicht zugänglich machen. http://blog.petegoo.com/index.php/2010/08/16/unit-test-workflow-4-activities-dependency-injection/ –
FYI, ich habe einige benutzerdefinierte Aktivitäten in meinem Toolkit-Projekt erstellt, die dies bereitstellen Funktionalität. Ich habe es als Abhängigkeitsauflösung bezeichnet (Service Locator als Maurice wie angegeben). Es wird sich um Persistenzszenarien kümmern und alle Abhängigkeiten aufräumen, wenn sie fertig sind. http://www.neovolve.com/post/2010/10/01/Custom-Windows-Workflow-activity-for-dependency-resolutione28093Wrap-up.aspx –