Beispiel für einen benutzerdefinierten Persistenzdienst
Dieses Beispiel veranschaulicht das Schreiben eines benutzerdefinierten Persistenzdiensts, der von der Workflowlaufzeit zum Speichern des Workflowinstanzstatus in einer Datei beim Entladen eines Workflows aus dem Speicher verwendet wird.
In dem Beispiel wartet der Workflow fünf Sekunden während einer DelayActivity-Aktivität. Da workflowRuntime.UnloadOnIdle auf true festgelegt ist, serialisiert das Laufzeitmodul den Instanzstatus durch Verwendung des konfigurierten Statuspersistenzdiensts. In diesem Fall ist die Laufzeit so konfiguriert, dass Sie den benutzerdefinierten Dateipersistenzdienst zum Beibehalten des Instanzstatus als Datei verwendet. Die Konfiguration wird von der AddService-Methode vorgenommen.
Ein benutzerdefinierter Persistenzdienst muss von der abstrakten WorkflowPersistenceService-Klasse ableiten und eine benutzerdefinierte Implementierung seiner Methoden bereitstellen. Dadurch, dass eine Anwendung der Laufzeit einen bestimmten Persistenzdienst bereitstellt, werden Szenarien möglich, die über den standardmäßigen SqlWorkflowPersistenceService hinausgehen, der in einer SQL Server-Datenbank beibehalten wird.
Die folgende Abbildung zeigt die erwartete Ausgabe für dieses Beispiel.
So erstellen Sie das Beispiel
Laden Sie das Beispiel herunter, indem Sie auf Beispiel downloaden klicken.
Hierdurch wird das Beispielprojekt auf die lokale Festplatte extrahiert.
Klicken Sie auf Start, zeigen Sie auf Programme, zeigen Sie auf Microsoft Windows SDK, und klicken Sie dann auf CMD Shell.
Wechseln Sie zum Quellverzeichnis des Beispiels.
Geben Sie an der Eingabeaufforderung MSBUILD <Name der Projektmappendatei> ein.
So führen Sie das Beispiel aus
- Führen Sie im Eingabeaufforderungsfenster des SDKs die EXE-Datei im Ordner CustomPersistenceService\bin\debug aus (bzw. im Ordner CustomPersistenceService\bin für die VB-Version des Beispiels), der sich unter dem Hauptordner des Beispiels befindet.
Siehe auch
Referenz
WorkflowPersistenceService
SqlWorkflowPersistenceService
Weitere Ressourcen
Beispiel für das Verwenden von Persistenzdiensten
Beispiel für einen benutzerdefinierten Persistenzdienst
Windows Workflow Persistence Services
Exercise 4 : Using Runtime Services
Task 3 : Using the Windows Workflow Persistence Service
Copyright © 2007 by Microsoft Corporation. Alle Rechte vorbehalten.