CorrelationHandle CorrelationHandle CorrelationHandle CorrelationHandle Class


Associates activities together in a correlation by representing a particular shared InstanceKey or transient context in the workflow.

public ref class CorrelationHandle : System::Activities::Handle
public class CorrelationHandle : System.Activities.Handle
type CorrelationHandle = class
    inherit Handle
Public Class CorrelationHandle
Inherits Handle


The following example shows how to set the CorrelationHandle on a SendReply activity.

new SendReply
    DisplayName = "Send Adjusted Cost",
    Request = prescriptionRequest,
    // Initialize the orderHandle using the MessageQuerySet to correlate with the final GetAdjustedCost request
    CorrelationInitializers = 
        new QueryCorrelationInitializer
            CorrelationHandle = orderHandle,
            MessageQuerySet = GetOrderQuerySet
    Content = SendContent.Create(new InArgument<Order>((e) => order.Get(e)))


Windows Workflow Foundation (WF) provides four types of correlation: Content Based, Request-Reply, Durable Duplex, and Context Exchange. For more information about correlation, see Correlation Overview, the specific correlation types mentioned previously, and the correlation samples located in the Services [WF Samples] node of the WF samples.

The runtime uses the CorrelationHandle for correlation if it is present, otherwise the CorrelatesWith property of the messaging activity will be used. If both are absent, the ambient handle provided by CorrelationScope or the workflow service is used.


CorrelationHandle() CorrelationHandle() CorrelationHandle() CorrelationHandle()

Initializes a new instance of the CorrelationHandle class.


Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
OnInitialize(HandleInitializationContext) OnInitialize(HandleInitializationContext) OnInitialize(HandleInitializationContext) OnInitialize(HandleInitializationContext)

Registers the CorrelationHandle with the workflow runtime.

OnUninitialize(HandleInitializationContext) OnUninitialize(HandleInitializationContext) OnUninitialize(HandleInitializationContext) OnUninitialize(HandleInitializationContext)

Unregisters the CorrelationHandle with the workflow runtime.

ThrowIfUninitialized() ThrowIfUninitialized() ThrowIfUninitialized() ThrowIfUninitialized()

Throws an InvalidOperationException if the Handle has not been initialized.

(Inherited from Handle)
ToString() ToString() ToString() ToString()

Returns a string that represents the current object.

(Inherited from Object)


ExecutionPropertyName ExecutionPropertyName ExecutionPropertyName ExecutionPropertyName

Gets the name to be used by this Handle when added to an activity’s execution properties.

(Inherited from Handle)
Owner Owner Owner Owner

Gets the ActivityInstance that contains the Variable that contains the Handle.

(Inherited from Handle)

Applies to