Bagikan melalui


CorrelationScope Kelas

Definisi

Menyediakan manajemen implisit CorrelationHandle untuk aktivitas pesan anak.

public ref class CorrelationScope : System::Activities::NativeActivity
public class CorrelationScope : System.Activities.NativeActivity
type CorrelationScope = class
    inherit NativeActivity
Public Class CorrelationScope
Inherits NativeActivity
Warisan
CorrelationScope

Contoh

Contoh berikut menunjukkan cara membuat CorrelationScope. Contoh ini membuat Sequence dan menambahkan CorrelationScope (di antara aktivitas lainnya). CorrelationScope berisi Sequence yang terdiri dari Send aktivitas dan ReceiveReply .

return new Sequence
{
    Variables = { po, customer },
    Activities =
    {
        new Assign<PurchaseOrder>
        {
            To = po,
            Value = new InArgument<PurchaseOrder>( (e) => new PurchaseOrder() { PartName = "Widget", Quantity = 150 } )
        },
        new Assign<Customer>
        {
            To = customer,
            Value = new InArgument<Customer>( (e) => new Customer() { Id = 12345678, Name = "John Smith" } )
        },
        new WriteLine { Text = new InArgument<string>( (e) => string.Format("Submitting new PurchaseOrder for {0} {1}s", po.Get(e).Quantity, po.Get(e).PartName) ) },
        new CorrelationScope
        {
            Body = new Sequence
            {
                Activities =
                {
                    submitPO,
                    new ReceiveReply
                    {
                        Request = submitPO,
                        Content = ReceiveContent.Create(new OutArgument<int>( (e) => po.Get(e).Id ))
                    }
                }
            }
        },
        new WriteLine { Text = new InArgument<string>( (e) => string.Format("Received ID for new PO: {0}", po.Get(e).Id) ) },
        new Assign<int> { To = new OutArgument<int>( (e) => po.Get(e).Quantity ), Value = 250 },
        new WriteLine { Text = "Updated PO with new quantity: 250.  Resubmitting updated PurchaseOrder based on POId." },
        new Send
        {
            Endpoint = clientEndpoint,
            ServiceContractName = Constants.POContractName,
            OperationName = Constants.UpdatePOName,
            Content = SendContent.Create(new InArgument<PurchaseOrder>(po))
        },
        new Assign<int>
        {
            To = new OutArgument<int>( (e) => po.Get(e).CustomerId ),
            Value = new InArgument<int>( (e) => customer.Get(e).Id )
        },
        new WriteLine { Text = "Updating customer data based on CustomerId." },
        new Send
        {
            Endpoint = clientEndpoint,
            ServiceContractName = Constants.POContractName,
            OperationName = Constants.AddCustomerInfoName,
            Content = SendContent.Create(new InArgument<PurchaseOrder>(po))
        },
        new Send
        {
            Endpoint = clientEndpoint,
            ServiceContractName = Constants.POContractName,
            OperationName = Constants.UpdateCustomerName,
            Content = SendContent.Create(new InArgument<Customer>(customer))
        },
        new WriteLine { Text = "Client completed." }
    }
};

Keterangan

Aktivitas mempertahankan CorrelationScope implisit CorrelationHandle yang hanya terlihat oleh aktivitas anak. CorrelatesWith Ketika properti diatur oleh pengguna, properti akan digunakan sebagai CorrelationScope handel implisit. Dalam kasus berlapis CorrelationScope, turunan dari cakupan dalam tidak dapat mengakses handel implisit dari cakupan luar.

Konstruktor

Nama Deskripsi
CorrelationScope()

Menginisialisasi instans baru dari kelas CorrelationScope.

Properti

Nama Deskripsi
Body

Mendapatkan atau mengatur logika eksekusi aktivitas.

CacheId

Mendapatkan pengidentifikasi cache yang unik dalam cakupan definisi alur kerja.

(Diperoleh dari Activity)
CanInduceIdle

Mendapatkan atau menetapkan nilai yang menunjukkan apakah aktivitas dapat menyebabkan alur kerja menjadi menganggur.

(Diperoleh dari NativeActivity)
Constraints

Mendapatkan kumpulan Constraint aktivitas yang dapat dikonfigurasi untuk memberikan validasi untuk Activity.

(Diperoleh dari Activity)
CorrelatesWith

Mendapatkan atau mengatur yang CorrelationHandle digunakan oleh aktivitas olahpesan anak.

DisplayName

Mendapatkan atau mengatur nama ramah opsional yang digunakan untuk penelusuran kesalahan, validasi, penanganan pengecualian, dan pelacakan.

(Diperoleh dari Activity)
Id

Mendapatkan pengidentifikasi yang unik dalam cakupan definisi alur kerja.

(Diperoleh dari Activity)
Implementation

Logika eksekusi aktivitas.

(Diperoleh dari NativeActivity)
ImplementationVersion

Mendapatkan atau mengatur versi implementasi aktivitas.

(Diperoleh dari NativeActivity)

Metode

Nama Deskripsi
Abort(NativeActivityAbortContext)

Ketika diimplementasikan dalam kelas turunan, mengambil tindakan sebagai respons terhadap aktivitas yang dibatalkan.

(Diperoleh dari NativeActivity)
CacheMetadata(ActivityMetadata)

Tidak diterapkan. Gunakan metode CacheMetadata(NativeActivityMetadata) sebagai gantinya.

(Diperoleh dari NativeActivity)
CacheMetadata(NativeActivityMetadata)

Membangun dan memvalidasi deskripsi argumen aktivitas, variabel, aktivitas anak, dan delegasi aktivitas.

Cancel(NativeActivityContext)

Ketika diimplementasikan dalam kelas turunan, menjalankan logika untuk menyebabkan penyelesaian awal aktivitas yang anggun.

(Diperoleh dari NativeActivity)
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
Execute(NativeActivityContext)

Dipanggil oleh runtime alur kerja untuk menjalankan CorrelationScope aktivitas.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)

Menaikkan peristiwa saat membuat peta untuk pembaruan dinamis.

(Diperoleh dari NativeActivity)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Menaikkan peristiwa saat membuat peta untuk pembaruan dinamis.

(Diperoleh dari NativeActivity)
ShouldSerializeCorrelatesWith()

Menunjukkan apakah CorrelatesWith properti harus diserialisasikan.

ShouldSerializeDisplayName()

Menunjukkan apakah DisplayName properti harus diserialisasikan.

(Diperoleh dari Activity)
ToString()

Mengembalikan yang String berisi Id dan DisplayName dari Activity.

(Diperoleh dari Activity)
UpdateInstance(NativeActivityUpdateContext)

Memperbarui instans NativeActivity.

(Diperoleh dari NativeActivity)

Berlaku untuk