CorrelationScope Klasa

Definicja

Zapewnia niejawne CorrelationHandle zarządzanie działaniami przesyłania komunikatów podrzędnych.

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

Przykłady

W poniższym przykładzie pokazano, jak utworzyć element CorrelationScope. W tym przykładzie tworzony jest obiekt Sequence i dodaje element CorrelationScope (między innymi). Element CorrelationScope zawiera element Sequence , który składa się z Send działania i 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." }
    }
};

Uwagi

Działanie CorrelationScope zachowuje niejawną CorrelationHandle , która jest widoczna tylko dla działań podrzędnych. CorrelatesWith Gdy właściwość jest ustawiana przez użytkownika, będzie używana jako niejawne CorrelationScope dojście. W przypadku zagnieżdżenia CorrelationScopeelementy podrzędne zakresu wewnętrznego nie mogą uzyskać dostępu do niejawnego uchwytu zakresu zewnętrznego.

Konstruktory

CorrelationScope()

Inicjuje nowe wystąpienie klasy CorrelationScope.

Właściwości

Body

Pobiera lub ustawia logikę wykonywania działania.

CacheId

Pobiera identyfikator pamięci podręcznej, który jest unikatowy w zakresie definicji przepływu pracy.

(Odziedziczone po Activity)
CanInduceIdle

Pobiera lub ustawia wartość wskazującą, czy działanie może spowodować, że przepływ pracy stanie się bezczynny.

(Odziedziczone po NativeActivity)
Constraints

Pobiera kolekcję działań, które można skonfigurować w celu Constraint zapewnienia weryfikacji dla Activity .

(Odziedziczone po Activity)
CorrelatesWith

Pobiera lub ustawia CorrelationHandle używane przez działania podrzędne obsługi komunikatów.

DisplayName

Pobiera lub ustawia opcjonalną przyjazną nazwę, która jest używana do debugowania, walidacji, obsługi wyjątków i śledzenia.

(Odziedziczone po Activity)
Id

Pobiera identyfikator, który jest unikatowy w zakresie definicji przepływu pracy.

(Odziedziczone po Activity)
Implementation

Logika wykonywania działania.

(Odziedziczone po NativeActivity)
ImplementationVersion

Pobiera lub ustawia wersję implementacji działania.

(Odziedziczone po NativeActivity)

Metody

Abort(NativeActivityAbortContext)

Po zaimplementowaniu w klasie pochodnej akcje są wykonywane w odpowiedzi na przerwane działanie.

(Odziedziczone po NativeActivity)
CacheMetadata(ActivityMetadata)

Nie zaimplementowano. CacheMetadata(NativeActivityMetadata) Zamiast tego użyj metody .

(Odziedziczone po NativeActivity)
CacheMetadata(NativeActivityMetadata)

Kompiluje i weryfikuje opis argumentów, zmiennych, działań podrzędnych i delegatów działań.

Cancel(NativeActivityContext)

Po zaimplementowaniu w klasie pochodnej logika uruchamia logikę, aby spowodować pomyślne wczesne ukończenie działania.

(Odziedziczone po NativeActivity)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
Execute(NativeActivityContext)

Wywoływane przez środowisko uruchomieniowe przepływu pracy w celu wykonania CorrelationScope działania.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)

Zgłasza zdarzenie podczas tworzenia mapy aktualizacji dynamicznej.

(Odziedziczone po NativeActivity)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Zgłasza zdarzenie podczas tworzenia mapy aktualizacji dynamicznej.

(Odziedziczone po NativeActivity)
ShouldSerializeCorrelatesWith()

Wskazuje, czy CorrelatesWith właściwość powinna być serializowana.

ShouldSerializeDisplayName()

Wskazuje, czy DisplayName właściwość powinna być serializowana.

(Odziedziczone po Activity)
ToString()

Zwraca wartość String zawierającą Id elementy i DisplayName . Activity

(Odziedziczone po Activity)
UpdateInstance(NativeActivityUpdateContext)

Aktualizacje wystąpienie klasy NativeActivity.

(Odziedziczone po NativeActivity)

Dotyczy