14 Dezember 2009

Workflow Designer Tipps und Tricks

Custom Activities sind cool: Sie erlauben, komplexe Teillogik eine Workflows in eine eigene Klasse / Activity zu packen, und dann den eigentlich Workflow schön schlank zu halten. Wenn nur nicht der Standard Workflow Designer im Visual Studio dann sämtliche Activities in der Custom Activity wieder anzeigt:

image

Das NERVT gewaltig. Jedenfalls mich persönlich. Zum Glück gibt es - wie für die meisten Probleme - dafür auch eine einfache Lösung: Einen Custom Designer per Attribut auf die Custom Activity setzen. Was jetzt kompliziert tönt, ist ganz einfach, da der Custom Designer nur deklariert werden muss, und gar keinen eigentlichen Code enthält.

    [Designer(typeof(MyDesigner), typeof(IDesigner))]
public partial class HandleGroupReview : SequenceActivity
{

private class MyDesigner : ActivityDesigner { }

// … A lot of workflow code …

}



Anschliessend muss noch das Attribut “Designer” auf der Custom Activity Klasse gesetzt werden und der oben abgebildete Workflow sieht schon wieder viel aufgeräumter aus.



image