WorkflowPersistenceService Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Achtung
The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*
Die abstrakte Basisklasse, von der alle Persistenzdienste abgeleitet werden.
public ref class WorkflowPersistenceService abstract : System::Workflow::Runtime::Hosting::WorkflowRuntimeService
public abstract class WorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
[System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")]
public abstract class WorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
type WorkflowPersistenceService = class
inherit WorkflowRuntimeService
[<System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")>]
type WorkflowPersistenceService = class
inherit WorkflowRuntimeService
Public MustInherit Class WorkflowPersistenceService
Inherits WorkflowRuntimeService
- Vererbung
- Abgeleitet
- Attribute
Hinweise
Note
In diesem Material werden Typen und Namespaces erläutert, die veraltet sind. Weitere Informationen finden Sie unter Deprecated Types in Windows Workflow Foundation 4.5.
Wenn bestimmte Bedingungen auftreten, während der Workflow ausgeführt wird, speichert das Workflowlaufzeitmodul Statusinformationen zur Workflowinstanz. Persistenz kann z. B. auftreten, wenn eine Atomtransaktion abgeschlossen ist, wenn die Workflowinstanz im Leerlauf ist, wenn der Host aufruft WorkflowInstance.Unload , oder wenn eine Workflowinstanz beendet oder beendet wird. Wenn die Semantik des Workflowlaufzeitmoduls bestimmt, dass Persistenz auftreten soll, ruft das Workflowlaufzeitmodul Methoden auf, die von einem Persistenzdienst bereitgestellt werden, um Zustandsinformationen zur Workflowinstanz zu speichern. Ebenso ruft das Workflowlaufzeitmodul, wenn eine zuvor beibehaltene Workflowinstanz wiederhergestellt werden muss, Methoden auf, die vom Persistenzdienst bereitgestellt werden, um diese Statusinformationen zu laden. Das Workflowlaufzeitmodul behandelt alle Semantik, die sich darauf bezieht, wann die Persistenz ausgeführt werden soll. Der Persistenzdienst verarbeitet tatsächlich das Speichern und Laden der Workflowstatusinformationen in oder aus einem Datenspeicher.
Sie können einen Persistenzdienst erstellen, indem Sie eine Klasse von der WorkflowPersistenceService Klasse ableiten. Sie können Ihren Persistenzdienst zum Workflowlaufzeitmodul hinzufügen, indem Sie einen entsprechenden Eintrag in der Anwendungskonfigurationsdatei aufrufen AddService oder einen entsprechenden Eintrag vornehmen. Dies WorkflowRuntime sollte nur einen Persistenzdienst enthalten. Windows Workflow Foundation stellt die klasse SqlWorkflowPersistenceService, einen sofort einsatzbereiten Persistenzdienst bereit, den Sie wie dargestellt oder erweitern können.
Das Workflowlaufzeitmodul verfügt über Semantik zum Sperren von Workflowstatusinformationen für die Verwendung in Umgebungen, in denen Persistenzdienste, die in verschiedenen Prozessen ausgeführt werden, möglicherweise Zugriff auf einen einzelnen Datenspeicher haben. Die WorkflowPersistenceService Klasse bietet die Möglichkeit, diese Funktionalität des Workflowlaufzeitmoduls zu unterstützen, indem ein Parameter SaveWorkflowInstanceState bereitgestellt wird, der angibt, ob die Statusinformationen einer Workflowinstanz im Datenspeicher entsperrt werden sollen, und indem eine Methode UnlockWorkflowInstanceState zum Entsperren zuvor gesperrter Workflowstatusinformationen bereitgestellt wird. In einem Persistenzdienst, der die Sperrung implementiert, sollte ein Aufruf LoadWorkflowInstanceState die Statusinformationen für eine Workflowinstanz sperren.
Ihr Persistenzdienst sollte einen PersistenceException Auslösen auslösen, wenn Statusinformationen nicht im Datenspeicher gespeichert oder Zustandsinformationen aus dem Datenspeicher geladen werden. Das Workflowlaufzeitmodul erwartet dieses Verhalten.
Ein Batchverarbeitungsmechanismus wird für Dienste bereitgestellt, die einen dauerhaften Speicher verwenden, um Workflowstatusinformationen zu speichern. In diesen Fällen ist es wichtig, die Konsistenz zwischen dem dauerhaften Speicher aufrechtzuerhalten, der vom Persistenzdienst und dem internen Zustand des Workflowlaufzeitmoduls verwendet wird. Sie können Dem Dienst definierte Funktionen hinzufügen und dann an der IPendingWork Workflowtransaktionsbatchierung teilnehmen, die WorkflowCommitWorkBatchService durch Hinzufügen von Änderungen an Ihrem Datenspeicher als Arbeitsaufgaben zur WorkBatchVerfügung gestellt wird. Der dauerhafte Speicher selbst sollte die IEnlistmentNotification Schnittstelle implementieren, sodass Workflowinformationen im Falle eines Transaktionsrollbacks nicht falsch beibehalten werden. Weitere Informationen finden Sie unter SaveCompletedContextActivity oder SaveWorkflowInstanceState.
Konstruktoren
| Name | Beschreibung |
|---|---|
| WorkflowPersistenceService() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse implementiert wird, initialisiert sie eine neue Instanz der WorkflowPersistenceService Klasse. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Runtime |
Veraltet.
Ruft den WorkflowRuntime für diesen Dienst ab. (Geerbt von WorkflowRuntimeService) |
| State |
Veraltet.
Ruft den Zustand der WorkflowRuntimeService. (Geerbt von WorkflowRuntimeService) |
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Veraltet.
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetDefaultSerializedForm(Activity) |
Veraltet.
Ruft das serialisierte Standardformular der Activity. |
| GetHashCode() |
Veraltet.
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetIsBlocked(Activity) |
Veraltet.
Gibt an, ob die angegebene Aktivität blockiert ist. |
| GetSuspendOrTerminateInfo(Activity) |
Veraltet.
Ruft die Beendigungs- oder Anhalteinformationen der angegebenen Aktivität ab. |
| GetType() |
Veraltet.
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| GetWorkflowStatus(Activity) |
Veraltet.
Ruft den Status des Workflows ab. |
| LoadCompletedContextActivity(Guid, Activity) |
Veraltet.
Wenn sie in einer abgeleiteten Klasse implementiert wird, wird der angegebene abgeschlossene Bereich wieder in den Arbeitsspeicher geladen. |
| LoadWorkflowInstanceState(Guid) |
Veraltet.
Wenn sie in einer abgeleiteten Klasse implementiert wird, wird der angegebene Zustand der Workflowinstanz wieder in den Arbeitsspeicher geladen. |
| MemberwiseClone() |
Veraltet.
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| OnStarted() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, stellt die Methode dar, die aufgerufen wird, wenn das Workflowlaufzeitmodul das Started Ereignis auslöst. (Geerbt von WorkflowRuntimeService) |
| OnStopped() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, stellt die Methode dar, die aufgerufen wird, wenn das Workflowlaufzeitmodul das Stopped Ereignis auslöst. (Geerbt von WorkflowRuntimeService) |
| RaiseServicesExceptionNotHandledEvent(Exception, Guid) |
Veraltet.
Löst das ServicesExceptionNotHandled-Ereignis aus. (Geerbt von WorkflowRuntimeService) |
| RestoreFromDefaultSerializedForm(Byte[], Activity) |
Veraltet.
Stellt das Activity serialisierte Formular wieder her. |
| SaveCompletedContextActivity(Activity) |
Veraltet.
Wenn sie in einer abgeleiteten Klasse implementiert wird, wird der angegebene abgeschlossene Bereich in einem Datenspeicher gespeichert. |
| SaveWorkflowInstanceState(Activity, Boolean) |
Veraltet.
Wenn sie in einer abgeleiteten Klasse implementiert wird, wird der Workflowinstanzstatus in einem Datenspeicher gespeichert. |
| Start() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird der Dienst gestartet und in .StateStarting (Geerbt von WorkflowRuntimeService) |
| Stop() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, stoppt der Dienst und ändert dies State in Stopping. (Geerbt von WorkflowRuntimeService) |
| ToString() |
Veraltet.
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
| UnloadOnIdle(Activity) |
Veraltet.
Bestimmt, ob ein Workflow beim Leerlauf entladen werden soll. |
| UnlockWorkflowInstanceState(Activity) |
Veraltet.
Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, wird der Workflowinstanzstatus entsperrt. |