Validierung von Aktivitätsbeziehungen
Dieses Thema gilt für Windows Workflow Foundation 4.
Dieses Beispiel besteht aus drei Aktivitäten, CreateCity
, CreateState
und CreateCountry
. CreateCity
muss sich in einer CreateState
-Aktivität befinden, und CreateState
muss sich in einer CreateCountry
-Aktivität befinden. Für dieses Beispiel ist die Validierungslogik in Code für die CreateState
-Aktivität und in XAML für die CreateCity
-Aktivität. Beide Einschränkungen weisen das gleiche Verhalten auf.
.NET Framework, Version 4 stellt die folgenden drei Hilfsaktivitäten bereit, mit denen die Entwickler Beziehungen zwischen Aktivitäten überprüfen können.
- GetParentChain
Stellt die Auflistung aller Workflowelemente bereit, die zum übergeordneten Element des aktuellen Knotens gehören
- GetChildSubtree
Stellt die Auflistung aller Workflowelemente bereit, die zur Teilstruktur des aktuellen Knotens gehören, ohne den aktuellen Knoten
- GetWorkflowTree
Stellt die Auflistung aller Workflowelemente in der gleichen Struktur wie der aktuelle Knoten bereit
Im Beispiel wird eine ForEach-Aktivität verwendet, um die Auflistung zu durchlaufen, die von GetParentChain zurückgegeben wurde. Für jedes Element in der Auflistung wird der Typ mit CreateCountry
(oder CreateState
, wenn CreateCity
überprüft wird) verglichen, sobald eine Übereinstimmung gefunden wird, wird das Ergebniskennzeichen auf true festgelegt. Schließlich wird AssertValidation verwendet, um einen Validierungsfehler zu generieren, wenn das Ergebniskennzeichen auf false festgelegt wird.
So verwenden Sie dieses Beispiel
Öffnen Sie die Beispielprojektmappe "ContainmentValidation.sln" in Visual Studio 2010.
Erstellen Sie die Projektmappe.
Drücken Sie STRG+F5, um das Programm zu starten.
Hinweis: |
---|
Die Beispiele sind möglicherweise bereits auf dem Computer installiert. Überprüfen Sie das folgende (standardmäßige) Verzeichnis, bevor Sie fortfahren.
<Installationslaufwerk>:\WF_WCF_Samples
Wenn dieses Verzeichnis nicht vorhanden ist, rufen Sie Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 auf, um alle Windows Communication Foundation (WCF)- und WF-Beispiele herunterzuladen. Dieses Beispiel befindet sich im folgenden Verzeichnis.
<Installationslaufwerk>:\WF_WCF_Samples\WF\Basic\Validation\ActivityRelationships
|