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 PersistenceParticipant veya sınıfından PersistenceIOParticipant türetilir (sınıfın PersistenceParticipant türetilmiş sınıfı), soyut yöntemler uygular ve ardından sınıfın bir örneğini iş akışı örneği uzantısı olarak ekler. WorkflowApplication bir örneği kalıcı hale eklerken ve WorkflowServiceHost 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ğinden alınmalıdır.

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

Açıklamalar

Bir konak, bir ö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, 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 yüksek 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

Name Description
PersistenceParticipant()

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

Yöntemler

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

Bir konak, kalıcı hale getirmek üzere okuma-yazma değerleri ve salt yazma değerleri toplamak için özel 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()

Geçerli örneğin Type 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şama (CollectValues aşaması) sırasında 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 Objectbasit 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 LoadWorkflowCommandile LoadWorkflowByInstanceKeyCommand doldurulur) sözlük parametresi olarak geçirir.

ToString()

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

(Devralındığı yer: Object)

Şunlara uygulanır