PersistenceParticipant Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Tato třída umožňuje a WorkflowApplicationWorkflowServiceHost účastnit se procesu trvalosti. Účastník trvalosti je odvozen z PersistenceParticipant třídy nebo PersistenceIOParticipant třídy (odvozená třída PersistenceParticipant třídy), implementuje abstraktní metody a pak přidá instanci třídy jako rozšíření instance pracovního postupu. Při WorkflowApplication zachování instance a při vyvolání odpovídajících metod ve WorkflowServiceHost vhodných časech vyhledejte taková rozšíření.
public ref class PersistenceParticipant abstract
public abstract class PersistenceParticipant
type PersistenceParticipant = class
Public MustInherit Class PersistenceParticipant
- Dědičnost
-
PersistenceParticipant
- Odvozené
Příklady
Následující ukázka kódu ukazuje vytvoření třídy, která je odvozena z PersistenceParticipant. Tento příklad je z ukázky náborového procesu .
public class HiringRequestInfoPersistenceParticipant: PersistenceIOParticipant
{
public HiringRequestInfoPersistenceParticipant()
: base(true, false)
{
}
Poznámky
Hostitel při zachování instance provede následující kroky (nebo fáze):
Shromažďuje hodnoty, které se mají zachovat.
Mapuje pole monolitických strukturovaných hodnot na jednotlivé hodnoty.
Vydá zprostředkovateli SaveWorkflowCommand trvalosti.
Provádí vstupně-výstupní operace v rámci transakce trvalosti.
Hostitel dokončí fázi před zahájením další fáze. Například při zachování hostitel shromažďuje hodnoty ze všech účastníků trvalosti před přechodem do druhé fáze. Ve druhé fázi hostitel poskytne všechny hodnoty shromážděné v první fázi všem účastníkům trvalosti ve druhé fázi pro mapování. Ve třetí fázi hostitel poskytne všechny shromážděné hodnoty v první a druhé fázi zprostředkovateli trvalosti při vyvolání SaveWorkflowCommand. Ve čtvrté fázi pak hostitel poskytne všechny shromážděné hodnoty všem účastníkům vstupně-výstupních operací trvalosti v rámci transakce trvalosti.
Hostitel provede při načítání instance trvalosti následující fáze:
Vydá zprostředkovateli LoadWorkflowCommand trvalosti a LoadWorkflowByInstanceKeyCommand .
Provádí vstupně-výstupní operace v rámci transakce trvalosti.
Publikuje načtené hodnoty.
Na nejvyšší úrovni se rozšíření instance pracovního postupu, která jsou odvozená z PersistenceParticipant třídy, mohou účastnit první (Collect) a druhé (mapové) fáze trvalého procesu a třetí fáze (Publish) procesu načítání. Rozšíření instance pracovního postupu odvozená z třídy PersistenceIOParticipant se mohou navíc účastnit čtvrté fáze trvalého procesu a druhé fáze procesu načítání (V/O).
Konstruktory
PersistenceParticipant() |
Inicializuje instanci třídy PersistenceParticipant. |
Metody
CollectValues(IDictionary<XName,Object>, IDictionary<XName,Object>) |
Hostitel vyvolá tuto metodu u vlastního účastníka trvalosti, aby shromáždil hodnoty pro čtení a zápis a hodnoty jen pro zápis, které se mají zachovat. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Získá aktuální Type instanci. (Zděděno od Object) |
MapValues(IDictionary<XName,Object>, IDictionary<XName,Object>) |
Hostitel vyvolá tuto metodu po dokončení shromažďování hodnot v první fázi. Hostitel předává do této metody mapování dva slovníky hodnot jen pro čtení, které shromáždil od všech účastníků trvalosti během první fáze (fáze CollectValues). Hostitel přidá hodnoty ve slovníku vrácené touto metodou do kolekce hodnot jen pro zápis. |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
PublishValues(IDictionary<XName,Object>) |
Hostitel vyvolá tuto metodu a předá všechny načtené hodnoty v InstanceData kolekci LoadWorkflowCommandLoadWorkflowByInstanceKeyCommand(vyplněné nebo ) jako parametr slovníku. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |