CorrelationScope Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece gestão implícita CorrelationHandle para atividades de mensagens crianças.
public ref class CorrelationScope : System::Activities::NativeActivity
public class CorrelationScope : System.Activities.NativeActivity
type CorrelationScope = class
inherit NativeActivity
Public Class CorrelationScope
Inherits NativeActivity
- Herança
Exemplos
O exemplo seguinte mostra como criar um CorrelationScope. Este exemplo cria um Sequence e acrescenta um CorrelationScope (entre outras atividades). O CorrelationScope contém um Sequence que é composto por uma Send atividade e 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." }
}
};
Observações
A CorrelationScope atividade mantém um implícito CorrelationHandle que só é visível para as atividades da criança. Quando a CorrelatesWith propriedade é definida pelo utilizador, será usada como o CorrelationScope handle implícito. No caso de aninhado CorrelationScope, os filhos do escopo interno não conseguem aceder ao handle implícito do escopo externo.
Construtores
| Name | Description |
|---|---|
| CorrelationScope() |
Inicializa uma nova instância da CorrelationScope classe. |
Propriedades
| Name | Description |
|---|---|
| Body |
Obtém ou define a lógica de execução da atividade. |
| CacheId |
Obtém o identificador da cache que é único dentro do âmbito da definição do workflow. (Herdado de Activity) |
| CanInduceIdle |
Recebe ou define um valor que indica se a atividade pode fazer com que o fluxo de trabalho fique inativo. (Herdado de NativeActivity) |
| Constraints |
Obtém uma coleção de Constraint atividades que podem ser configuradas para fornecer validação para o Activity. (Herdado de Activity) |
| CorrelatesWith |
Obtém ou define as CorrelationHandle atividades de mensagens usadas pela criança. |
| DisplayName |
Recebe ou define um nome amigável opcional que é usado para depuração, validação, tratamento de exceções e rastreio. (Herdado de Activity) |
| Id |
Obtém um identificador que é único no âmbito da definição do fluxo de trabalho. (Herdado de Activity) |
| Implementation |
A lógica de execução da atividade. (Herdado de NativeActivity) |
| ImplementationVersion |
Recebe ou define a versão de implementação da atividade. (Herdado de NativeActivity) |
Métodos
| Name | Description |
|---|---|
| Abort(NativeActivityAbortContext) |
Quando implementado numa classe derivada, toma ações em resposta à atividade abortada. (Herdado de NativeActivity) |
| CacheMetadata(ActivityMetadata) |
Não implementado. Use o CacheMetadata(NativeActivityMetadata) método em vez disso. (Herdado de NativeActivity) |
| CacheMetadata(NativeActivityMetadata) |
Constrói e valida uma descrição dos argumentos, variáveis, atividades filhos e delegados de atividade da atividade. |
| Cancel(NativeActivityContext) |
Quando implementado numa classe derivada, executa lógica para garantir uma conclusão precoce e graciosa da atividade. (Herdado de NativeActivity) |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| Execute(NativeActivityContext) |
Chamado pelo tempo de execução do workflow para executar a CorrelationScope atividade. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity) |
Abre um evento ao criar um mapa para a atualização dinâmica. (Herdado de NativeActivity) |
| OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity) |
Abre um evento ao criar um mapa para a atualização dinâmica. (Herdado de NativeActivity) |
| ShouldSerializeCorrelatesWith() |
Indica se a CorrelatesWith propriedade deve ser serializada. |
| ShouldSerializeDisplayName() |
Indica se a DisplayName propriedade deve ser serializada. (Herdado de Activity) |
| ToString() |
Devolve um String que contém o Id e DisplayName do Activity. (Herdado de Activity) |
| UpdateInstance(NativeActivityUpdateContext) |
Atualiza a instância de NativeActivity. (Herdado de NativeActivity) |