PersistenceParticipant Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Den här klassen tillåter både WorkflowApplication och WorkflowServiceHost att delta i beständighetsprocessen. En beständig deltagare härleds från PersistenceParticipant klassen eller PersistenceIOParticipant klassen (klassens härledda klass PersistenceParticipant ), implementerar abstrakta metoder och lägger sedan till en instans av klassen som ett arbetsflödesinstanstillägg. Och WorkflowApplicationWorkflowServiceHost leta efter sådana tillägg när du bevarar en instans och anropar lämpliga metoder vid lämpliga tidpunkter.
public ref class PersistenceParticipant abstract
public abstract class PersistenceParticipant
type PersistenceParticipant = class
Public MustInherit Class PersistenceParticipant
- Arv
-
PersistenceParticipant
- Härledda
Exempel
Följande kodexempel visar hur du skapar en klass som härleds från PersistenceParticipant. Det här exemplet är från exemplet Anställningsprocess .
public class HiringRequestInfoPersistenceParticipant: PersistenceIOParticipant
{
public HiringRequestInfoPersistenceParticipant()
: base(true, false)
{
}
Kommentarer
En värd kör följande steg (eller steg) när en instans bevaras:
Samlar in värden som ska bevaras.
Mappar fält med monolitiska strukturerade värden till enskilda värden.
SaveWorkflowCommand Utfärdar till beständighetsprovidern.
Utför I/O under beständighetstransaktionen.
En värd slutför en fas innan nästa steg påbörjas. Till exempel samlar värden in värden värden från alla beständighetsdeltagare innan de flyttas till den andra fasen. I den andra fasen tillhandahåller värden alla värden som samlats in i den första fasen till alla beständighetsdeltagare i den andra fasen för mappning. I den tredje fasen tillhandahåller värden alla insamlade värden i det första och andra steget till beständighetsprovidern SaveWorkflowCommandnär du anropar . I den fjärde fasen tillhandahåller värden sedan alla insamlade värden till alla beständiga I/O-deltagare under beständighetstransaktionen.
En värd kör följande steg när en beständig instans läses in:
LoadWorkflowCommand Utfärdar och LoadWorkflowByInstanceKeyCommand till beständighetsprovidern.
Utför I/O under beständighetstransaktionen.
Publicerar de inlästa värdena.
På den högsta nivån kan tillägg för arbetsflödesinstanser som härleds från PersistenceParticipant klassen delta i de första (Collect) och andra (Map)-stegen i kvarstående process och den tredje fasen (Publicera) av inläsningsprocessen. Arbetsflödesinstanstillägg som härleds från klassen PersistenceIOParticipant kan dessutom delta i den fjärde fasen av kvarhållningsprocessen och den andra fasen i inläsningsprocessen (I/O).
Konstruktorer
| Name | Description |
|---|---|
| PersistenceParticipant() |
Initierar en instans av PersistenceParticipant klassen. |
Metoder
| Name | Description |
|---|---|
| CollectValues(IDictionary<XName,Object>, IDictionary<XName,Object>) |
En värd anropar den här metoden på en anpassad beständighetsdeltagare för att samla in skrivskyddade värden och skrivskyddade värden som ska sparas. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MapValues(IDictionary<XName,Object>, IDictionary<XName,Object>) |
En värd anropar den här metoden när den är klar med att samla in värdena i den första fasen. Värden vidarebefordrar två skrivskyddade ordlistor med värden som samlas in från alla beständighetsdeltagare under den första fasen (CollectValues-fasen) till den här metoden för mappning. Värden lägger till värden i ordlistan som returneras av den här metoden till samlingen med skrivskyddade värden. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| PublishValues(IDictionary<XName,Object>) |
Värden anropar den här metoden och skickar alla inlästa värden i InstanceData samlingen (ifyllda med parametern LoadWorkflowCommand eller LoadWorkflowByInstanceKeyCommand) som en ordlisteparameter. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |