PersistenceParticipant Sınıf

Tanım

Bu sınıf hem hem de WorkflowApplicationWorkflowServiceHost kalıcılık işlemine katılmasını sağlar. Kalıcılık katılımcısı sınıfından veya sınıfından PersistenceParticipantPersistenceIOParticipant (sınıfın türetilmiş sınıfı) PersistenceParticipant türetilir, soyut yöntemler uygular ve ardından sınıfın bir örneğini iş akışı örneği uzantısı olarak ekler. WorkflowApplication ve WorkflowServiceHost bir örneği kalıcı hale eklerken bu tür uzantıları arar ve uygun zamanlarda uygun yöntemleri çağırır.

public ref class PersistenceParticipant abstract
public abstract class PersistenceParticipant
type PersistenceParticipant = class
Public MustInherit Class PersistenceParticipant
Devralma
PersistenceParticipant
Türetilmiş

Örnekler

Aşağıdaki kod örneği, öğesinden PersistenceParticipanttüretilen bir sınıf oluşturmayı gösterir. Bu örnek İşe Alma İşlemi örneğindendir.

public class HiringRequestInfoPersistenceParticipant: PersistenceIOParticipant
{
    public HiringRequestInfoPersistenceParticipant()
        : base(true, false)
    {
    }

Açıklamalar

Bir konak, örneği kalıcı hale getirince aşağıdaki adımları (veya aşamaları) yürütür:

  1. Kalıcı hale getirmek için değerleri toplar.

  2. Monolitik yapılandırılmış değerlerin alanlarını tek tek değerlerle eşler.

  3. kalıcılık sağlayıcısına ile SaveWorkflowCommand ilgili sorunları giderir.

  4. Kalıcılık işlemi altında G/Ç gerçekleştirir.

Konak, bir sonraki aşamaya başlamadan önce bir aşamayı tamamlar. Örneğin, konak kalıcılık sırasında ikinci aşamaya geçmeden önce tüm kalıcılık katılımcılarından değerler toplar. İkinci aşamada, konak ilk aşamada toplanan tüm değerleri eşleme için ikinci aşamadaki tüm kalıcılık katılımcılarına sağlar. Üçüncü aşamada konak, ilk ve ikinci aşamalarda toplanan tüm değerleri, çağrılırken kalıcılık sağlayıcısına SaveWorkflowCommandsağlar. Ardından dördüncü aşamada konak, toplanan tüm değerleri kalıcılık işlemi altındaki tüm kalıcılık GÇ katılımcılarına sağlar.

Bir konak, bir kalıcılık örneği yüklenirken aşağıdaki aşamaları yürütür:

  1. LoadWorkflowCommand kalıcılık sağlayıcısına ve LoadWorkflowByInstanceKeyCommand sorunlarını giderir.

  2. Kalıcılık işlemi altında G/Ç gerçekleştirir.

  3. Yüklenen değerleri yayımlar.

En üst düzeyde, sınıfından PersistenceParticipant türetilen iş akışı örneği uzantıları, kalıcı işlemin birinci (Toplama) ve ikinci (Eşleme) aşamalarına ve yükleme işleminin üçüncü aşamasına (Yayımla) katılabilir. PersistenceIOParticipant sınıfından türetilen iş akışı örneği uzantıları, kalıcı işlemin dördüncü aşamasına ve yükleme işleminin (G/Ç) ikinci aşamasına da katılabilir.

Oluşturucular

PersistenceParticipant()

PersistenceParticipant sınıfının örneğini başlatır.

Yöntemler

CollectValues(IDictionary<XName,Object>, IDictionary<XName,Object>)

Bir konak, kalıcı hale getirmek üzere okuma-yazma değerlerini ve salt yazma değerlerini toplamak için özel bir kalıcılık katılımcısı üzerinde bu yöntemi çağırır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MapValues(IDictionary<XName,Object>, IDictionary<XName,Object>)

Bir konak, ilk aşamadaki değerleri toplama işlemi tamamlandıktan sonra bu yöntemi çağırır. Konak, ilk aşamada (CollectValues aşaması) tüm kalıcılık katılımcılarından topladığı değerlerin iki salt okunur sözlüklerini eşleme için bu yönteme iletir. Konak, bu yöntem tarafından döndürülen sözlükteki değerleri salt yazma değerleri koleksiyonuna ekler.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
PublishValues(IDictionary<XName,Object>)

Konak bu yöntemi çağırır ve koleksiyondaki InstanceData tüm yüklü değerleri (veya LoadWorkflowByInstanceKeyCommandile LoadWorkflowCommand doldurulur) sözlük parametresi olarak geçirir.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır