Windows Workflow Foundation-Beispiele

Die Beispiele in diesem Abschnitt decken einen umfassenden Bereich der Windows Workflow Foundation-Technologie ab. Die Technologiebeispiele konzentrieren sich auf wichtige Bereiche von Windows Workflow Foundation, wohingegen die Anwendungsbeispiele zahlreiche Windows Workflow Foundation-Features anhand von vollständigen Anwendungen veranschaulichen.

In diesem Abschnitt

Anwendungsbeispiele

Die Beispiele für Anwendungen stellen vollständige, für Windows Workflow Foundation geschriebene Anwendungen dar, die die Verwendung zahlreicher Technologien veranschaulichen.

Beispiel Beschreibung

Beispiel für einen Bestellstatuscomputer

Veranschaulicht die Erstellung eines Statuscomputerworkflows, der ein Bestellsystem implementiert.

Beispiel für den Outlook-Workflow-Assistenten

Veranschaulicht, wie der Visual Studio-Designer von Windows Workflow Foundation zum Erstellen einer Anwendung gehostet wird, die Regeln für Microsoft Office Outlook generiert.

Sprachanwendungsbeispiel

Veranschaulicht die Erstellung eines Statuscomputerworkflows, der eine sprachgesteuerte Menüanwendung implementiert.

Termination Tracking Service-Beispiel

Veranschaulicht die Erstellung eines benutzerdefinierten Überwachungsdiensts zum Überwachen von Workflowbeendigungen.

Beispiel für den Überwachungsprofil-Designer

Ermöglicht das visuelle Erstellen eines Überwachungsprofils. Dieses Überwachungsprofil kann dann in einer Datei oder einer Datenbank in SQL Server gespeichert werden.

Workflow-Monitor-Beispiel

Stellt ein Tool bereit, mit dem Sie den Fortschritt einer Workflowinstanz anzeigen können. Das Beispiel verwendet SqlTrackingService zum Abrufen des aktuellen Workflow- und Aktivitätsstatus; außerdem verwendet es den neu zu hostenden Workflow-Designer zum Anzeigen des Fortschritts.

Workflow Reflection Utility-Beispiel

Stellt ein umfassendes Tool zum Extrahieren von Informationen, die sich auf den Workflow beziehen, aus einer Assembly bereit. Die Hierarchie, die deklarativen Regeln und die erforderlichen lokalen Dienste für die einzelnen Workflows werden in einer Strukturansicht angezeigt. Hierdurch wird das Suchen in der Struktur des kompilierten Workflows vereinfacht.

Technologiebeispiele

Die Beispiele für Technologie veranschaulichen bestimmte Technologien von Windows Workflow Foundation. Sie sind nach Technologiefunktion kategorisiert.

Kategorie Beispiel Beschreibung

Beispiele für Aktivitäten

Beispiel für geschachtelte Ausnahmehandler

Erläutert, wie geschachtelte Ausnahmehandler in einem Workflow verwendet werden, um bestimmte Ausnahmetypen in verschiedenen Phasen des Workflows zu erfassen und zu behandeln.

Beispiel für Verzögerung

Veranschaulicht die Verwendung der DelayActivity-Aktivität.

While- und Parallel-Beispiel

Demonstriert die Verwendung zweier paralleler, sequenzieller Codeaktivitäten in einer While-Schleifenaktivität.

Beispiel für das Abbrechen und Beenden

Veranschaulicht die Verwendung zweier grundlegender Aktivitäten, SuspendActivity und TerminateActivity.

Replikatorbeispiel

Veranschaulicht die einfache Verwendung der ReplicatorActivity-Aktivität.

ConditionedActivityGroup-Beispiel

Stellt eine einfache Implementierung einer ConditionedActivityGroup (CAG)-Aktivität bereit.

Synchronisierungsbeispiel

Erläutert die Erstellung eines Workflows, mit dem der Zugriff auf freigegebene Ressourcen synchronisiert wird.

Auslösungsbeispiel

Veranschaulicht die Verwendung der Throw-Aktivität, mit der Sie eine Ausnahme modellieren und in einem Workflow auslösen können. Außerdem wird erläutert, wie Sie die Ausnahme in der Hostanwendung abfangen.

Kompensierungsbeispiel

Veranschaulicht, wie Kompensierung in einem Workflow erstellt wird.

Beispiel für eine einfache Richtlinie

Erläutert die Erstellung eines Workflows, der zum Implementieren eines Rabattworkflows die PolicyActivity-Aktivität verwendet.

Beispiel für erweiterte Richtlinien

Baut auf dem Beispiel für eine einfache Richtlinie-Beispiel auf und erläutert die erweiterten Möglichkeiten in RuleSet.

Beispiel für die Statusinitialisierung

Demonstriert die Verwendung einer State Initialization-Aktivität.

Beispiele für die Aktivitätsbindung

Beispiel für die benutzerdefinierte Aktivitätsbindung

Schließt einen Workflow ein, der über eine benutzerdefinierte Aktivitätseigenschaft, die an eine Workfloweigenschaft gebunden ist, verfügt.

Beispiele für einfache Workflows

Beispiel für einen einfachen sequenziellen Workflow

Veranschaulicht die Erstellung und Ausführung eines "hello world"-Workflows anhand eines Befehlszeilenhosts.

Beispiel für einen einfachen Statuscomputer

Veranschaulicht die Verwendung eines Statuscomputerworkflows.

Workflow mit Parameter-Beispiel

Veranschaulicht, wie ein einfacher sequenzieller Workflow mit IN- und OUT-Parametern erstellt wird. Dieses Beispiel ist fast identisch mit dem Beispiel für einen einfachen sequenziellen Workflow-Beispiel, mit der Ausnahme, dass der IN-Parameter von der Codebedingung in der IfElseActivity-Aktivität ausgewertet und der Bestellstatus in einem OUT-Parameter gespeichert wird.

Kommunikationsbeispiele

Webdienstbeispiel

Veranschaulicht, wie Webdienste vom Workflow aufgerufen werden können und wie ein Workflow als Webdienst veröffentlicht werden kann.

Listen-Beispiel

Stellt die ListenActivity-Aktivität vor, bei der es sich um eine zusammengesetzte Aktivität handelt, die blockiert und auf das Auftreten einer von n untergeordneten Verzweigungen wartet. Jede untergeordnete Verzweigung ist eine Sequenz mit einer Blockieraktivität als ersten Schritt. Nur eine der Verzweigungen einer ListenActivity-Aktivität wird ausgeführt.

Beispiel für korrelierten lokalen Dienst

Veranschaulicht die Verwendung von Korrelationsattributen mit lokalen Diensten, um korrelierte Ereignisse für eine Workflowinstanz auszulösen.

Beispiel für einfache Eingabe

Erläutert die Verwendung von Warteschlangen zum Senden von Daten an einen Workflow.

Beispiel für die Hostkommunikation

Veranschaulicht die Kommunikation mit der Hostanwendung des Workflows mit einem lokalen Dienst.

Beispiel für die Statuscomputerkommunikation

Veranschaulicht den Übergang von einem Status in einen anderen anhand der HandleExternalEventActivity-Aktivitäten.

Beispiele für benutzerdefinierte Aktivitäten

Beispiel für eine einfache Aktivität

Veranschaulicht, wie einer benutzerdefinierten Aktivität Eigenschaften und Handler hinzugefügt werden.

Einfaches Aktivitätsdesigner-Beispiel

Erläutert, wie Sie einen benutzerdefinierten Konfigurationsfehler und ein benutzerdefiniertes Kontextmenü zu dem Designer hinzufügen, der mit einer Aktivität verknüpft ist.

Beispiel für eine Aktivität zum Senden von E-Mail

Veranschaulicht die Erstellung einer benutzerdefinierten Aktivität, die zum Senden von E-Mail-Nachrichten mit SMTP (Simple Mail Transfer Protocol) verwendet werden kann.

Beispiel für FileSystemWatcher-Aktivität

Erläutert, wie Sie eine Aktivität erstellen, mit der Dateisystemereignisse überwacht werden können. Das Beispiel veranschaulicht die Verwendung von Warteschlangen bei der Entwicklung einer Aktivität, die Dateisystemereignisse überwacht, wie zum Beispiel das Erstellen einer Datei in einem bestimmten Ordner.

Beispiel für Designerhosting

Basic Designer Hosting-Beispiel

Erläutert, wie der Workflow-Designer in einer Windows-Anwendung erneut gehostet werden kann. Zweck dieses Beispiels ist es, aufzuzeigen, wie eine von Visual Studio getrennte Entwicklungsumgebung/Ausführungsumgebung erstellt werden kann.

Beispiele für dynamische Aktualisierungen

Beispiel für das dynamische Aktualisieren aus dem Workflow

Veranschaulicht, wie eine Workflowinstanz dynamisch aktualisiert wird, wenn sie innerhalb eines Workflows ausgeführt wird (Code-Beside).

Beispiel für Regeländerungen

Veranschaulicht, wie eine Regelbedingung aus dem Hostprogramm dynamisch geändert werden kann.

Beispiel für das dynamische Aktualisieren vom Host

Veranschaulicht, wie eine Workflowinstanz außerhalb des Workflows, zum Beispiel vom Hostprogramm, dynamisch aktualisiert wird.

Hosting-Beispiel

Beispiel für einen benutzerdefinierten Persistenzdienst

Veranschaulicht das Entladen eines Workflows durch das Modul, indem der Workflowinstanzstatus über einen benutzerdefinierten Persistenzdienst gespeichert wird, während der Workflow während einer Verzögerungsaktivität wartet.

Beispiel für das Auslösen eines Ereignisses zum Laden eines Workflows

Veranschaulicht ein Szenario zur Dokumentgenehmigung, in dem der Workflow aus dem Speicher entladen wird, wenn er sich im Leerlauf befindet, und beim Eintreffen des Ereignisses wieder in den Speicher geladen wird.

Beispiel für das Verwenden von Persistenzdiensten

Demonstriert die Verwendung des SqlWorkflowPersistenceService-Diensts sowie das Laden und Entladen von Workflowinstanzen durch die Anwendung und die Workflowlaufzeit in den bzw. aus dem Speicher.

Beispiel für das Abbrechen eines Workflows

Veranschaulicht, wie ein Workflow beendet wird, der auf ein externes Ereignis wartet, das niemals eintritt.

Workflow-Threading-Beispiel

Veranschaulicht die Unterschiede zwischen dem Ausführen eines Workflows mit dem manuellen Threadingmodell und dem standardmäßigen CLR (Common Language Runtime)-Threadingmodell. Erläutert außerdem die Auswirkungen auf das Threading, die die Verwendung der DelayActivity-Aktivität in einem Workflow hat.

Persistenzhost-Beispiel

Demonstriert, wie ein beibehaltener Workflow mit einem Windows Forms-Beispiel neu geladen werden kann.

Beispiele für die Ausführung im Arbeitsspeicher

Beispiel für einfaches Ausführen im Arbeitsspeicher

Demonstriert, wie eine Workflowcodedatei zur Laufzeit geladen wird.

Markupbeispiele

Beispiel für einen sequenziellen Markupworkflow

Demonstriert, wie ein einfacher sequenzieller Workflow als Markup erstellt wird.

Beispiel für den Markup-Workflow eines Statuscomputers

Demonstriert, wie ein einfacher Statuscomputerworkflow als Markup erstellt wird.

Beispiel für die Workflowserialisierung

Demonstriert, wie ein programmgesteuert erstellter Workflow serialisiert und neu geladen wird.

Beispiel für die benutzerdefinierte Serialisierung

Veranschaulicht die Serialisierung erweiteter Datentypen.

Rollenbeispiele

Beispiel für die Verwendung von Active Directory-Rollen

Veranschaulicht die Verwendung von Active Directory-Rollen in Workflows.

Beispiel für das Verwenden von Webworkflowrollen

Veranschaulicht die Verwendung von ASP-Rollen in Workflows.

Beispiele für Regeln und Bedingungen

Beispiel für IfElse mit Regeln

Veranschaulicht die Verwendung einer Regelbedingung mit einer IfElseActivity-Aktivität.

Überwachungsbeispiele

Einfaches Überwachungsbeispiel

Veranschaulicht die Verwendung des SQL-Überwachungsdiensts zum Überwachen von Workflowereignissen.

Beispiel für die Abfrage mit SQLTrackingService

Veranschaulicht die Verwendung des SQL-Überwachungsdiensts zum Überwachen von Workflowereignissen mit einem benutzerdefinierten Überwachungsprofil.

Beispiel für das Überwachen mit Benutzerüberwachungspunkten

Erläutert die Verwendung des SQL-Überwachungsdiensts zum Überwachen von Workflowereignissen mit Benutzerüberwachungspunkten.

EventArgs-Überwachungsbeispiel

Veranschaulicht die Verwendung des SQL-Überwachungsdiensts zum Überwachen von TrackingWorkflowTerminatedEventArgs, TrackingWorkflowSuspendedEventArgs und TrackingWorkflowExceptionEventArgs des Workflows.

ConsoleTrackingService-Beispiel

Demonstriert das Erstellen eines Überwachungsdiensts und das Ausgeben des Inhalts von überwachten Daten in der Konsole.

RuleActionTrackingEvent-Beispiel

Erläutert die Verwendung von Überwachung zum Ermitteln von Regelaktionen im Workflow.

Beispiel für einen Dateiüberwachungsdienst und Abfrage

Veranschaulicht, wie Sie einen einfachen dateibasierten Überwachungsdienst erstellen können, der TrackingProfile-Daten in eine XML-Datei schreibt und daraus liest.

Beispiel für das Verwenden des Überwachungsprofil-Objektmodells

Veranschaulicht, wie Sie TrackingProfile-Daten mit dem Überwachungsprofil-Objektmodell erstellen, serialisieren und deserialisieren.

Beispiel für die SQL-Datenpflege

Demonstriert, wie Überwachungsdaten zur einfachen Archivierung partitioniert werden.

Beispiele für den WorkflowCommitWorkBatch-Dienst

Verwenden des Beispiels für den WorkflowCommitWorkBatch-Dienst

Erläutert die Erstellung eines benutzerdefinierten Diensts; erläutert darüber hinaus, wie dieser Dienst an der gleichen Transaktion beteiligt sein kann wie der des Workflows, von dem aus der Dienst aufgerufen wird.

Senden Sie Kommentare zu diesem Thema an Microsoft.