PersistenceParticipant Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Kelas ini memungkinkan WorkflowApplication dan WorkflowServiceHost untuk berpartisipasi dalam proses persistensi. Peserta persistensi berasal dari PersistenceParticipant kelas atau PersistenceIOParticipant kelas (kelas turunan PersistenceParticipant kelas), menerapkan metode abstrak, lalu menambahkan instans kelas sebagai ekstensi instans alur kerja. dan WorkflowApplication mencari ekstensi tersebut WorkflowServiceHost saat mempertahankan instans dan memanggil metode yang sesuai pada waktu yang tepat.
public ref class PersistenceParticipant abstract
public abstract class PersistenceParticipant
type PersistenceParticipant = class
Public MustInherit Class PersistenceParticipant
- Warisan
-
PersistenceParticipant
- Turunan
Contoh
Sampel kode berikut menunjukkan pembuatan kelas yang berasal dari PersistenceParticipant. Contoh ini berasal dari sampel Proses Perekrutan .
public class HiringRequestInfoPersistenceParticipant: PersistenceIOParticipant
{
public HiringRequestInfoPersistenceParticipant()
: base(true, false)
{
}
Keterangan
Host menjalankan langkah-langkah berikut (atau tahapan) saat mempertahankan instans:
Mengumpulkan nilai yang akan dipertahankan.
Memetakan bidang nilai terstruktur monolitik ke nilai individual.
Masalah ke SaveWorkflowCommand penyedia persistensi.
Melakukan I/O di bawah transaksi persistensi.
Host menyelesaikan tahap sebelum memulai tahap berikutnya. Misalnya saat bertahan, host mengumpulkan nilai dari semua peserta persistensi sebelum pindah ke tahap kedua. Pada tahap kedua, host menyediakan semua nilai yang dikumpulkan pada tahap pertama kepada semua peserta persistensi di tahap kedua untuk pemetaan. Pada tahap ketiga, host menyediakan semua nilai yang dikumpulkan pada tahap pertama dan kedua ke penyedia persistensi saat memanggil SaveWorkflowCommand. Kemudian pada tahap keempat, host menyediakan semua nilai yang dikumpulkan kepada semua peserta IO persistensi di bawah transaksi persistensi.
Host menjalankan tahapan berikut saat memuat instans persistensi:
Masalah dan LoadWorkflowCommandLoadWorkflowByInstanceKeyCommand ke penyedia persistensi.
Melakukan I/O di bawah transaksi persistensi.
Menerbitkan nilai yang dimuat.
Pada tingkat tertinggi, ekstensi instans alur kerja yang berasal dari PersistenceParticipant kelas dapat berpartisipasi dalam tahap pertama (Kumpulkan) dan kedua (Peta) dari proses bertahan dan tahap ketiga (Terbitkan) proses pemuatan. Ekstensi instans alur kerja yang berasal dari kelas PersistenceIOParticipant juga dapat berpartisipasi dalam tahap keempat proses yang bertahan dan tahap kedua dari proses pemuatan (I/O).
Konstruktor
| Nama | Deskripsi |
|---|---|
| PersistenceParticipant() |
Menginisialisasi instans PersistenceParticipant kelas. |
Metode
| Nama | Deskripsi |
|---|---|
| CollectValues(IDictionary<XName,Object>, IDictionary<XName,Object>) |
Host memanggil metode ini pada peserta persistensi kustom untuk mengumpulkan nilai baca-tulis dan nilai tulis-saja, untuk dipertahankan. |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MapValues(IDictionary<XName,Object>, IDictionary<XName,Object>) |
Host memanggil metode ini setelah dilakukan dengan mengumpulkan nilai pada tahap pertama. Host meneruskan dua kamus nilai baca-saja yang dikumpulkannya dari semua peserta persistensi selama tahap pertama (tahap CollectValues) ke metode ini untuk pemetaan. Host menambahkan nilai dalam kamus yang dikembalikan oleh metode ini ke kumpulan nilai tulis-saja. |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| PublishValues(IDictionary<XName,Object>) |
Host memanggil metode ini dan meneruskan semua nilai yang dimuat dalam InstanceData koleksi (diisi oleh LoadWorkflowCommand atau LoadWorkflowByInstanceKeyCommand) sebagai parameter kamus. |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |