TransactedReceiveScope 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.
Uma atividade que define a duração de uma transação iniciada por uma mensagem recebida. A transação pode ser integrada no fluxo de trabalho na mensagem inicial, ou ser criada pelo despachante quando a mensagem é recebida.
public ref class TransactedReceiveScope sealed : System::Activities::NativeActivity
[System.Windows.Markup.ContentProperty("Body")]
public sealed class TransactedReceiveScope : System.Activities.NativeActivity
[<System.Windows.Markup.ContentProperty("Body")>]
type TransactedReceiveScope = class
inherit NativeActivity
Public NotInheritable Class TransactedReceiveScope
Inherits NativeActivity
- Herança
- Atributos
Exemplos
O exemplo seguinte mostra como usar a TransactedReceiveScope aula numa Sequence atividade.
return new Sequence
{
Activities =
{
new WriteLine { Text = "Service workflow begins." },
new System.ServiceModel.Activities.TransactedReceiveScope
{
Variables = { requestMessage, replyMessage },
Request = receive,
Body = new Sequence
{
Activities =
{
new WriteLine { Text = new InArgument<string>("Server side: Receive complete.") },
new WriteLine { Text = new InArgument<string>(new VisualBasicValue<string>() { ExpressionText = "\"Server side: Received = '\" + requestString.toString() + \"'\"" }) },
new PrintTransactionInfo(),
new Assign<string>
{
Value = new InArgument<string>("Server side: Sending reply."),
To = new OutArgument<string>(replyMessage)
},
new WriteLine { Text = new InArgument<string>("Server side: Begin reply.") },
new SendReply
{
Request = receive,
Content = SendContent.Create(new InArgument<string>(replyMessage)),
},
new WriteLine { Text = new InArgument<string>("Server side: Reply sent.") },
},
},
},
new WriteLine { Text = "Server workflow ends." },
},
};
Observações
A TransactedReceiveScope atividade permite-lhe controlar a vida útil da transação em fluxo.
Warning
Para uma atividade iniciadora TransactedReceiveScope (a TransactedReceiveScope que contém uma Receive atividade com CanCreateInstance definido como true), a transação é criada antes de o tempo de execução começar a executar a TransactedReceiveScope atividade. Esta transação não é ambiente na camada de atividade do fluxo de trabalho, mas é ambiente nas camadas de persistência subjacentes. Se a execução do fluxo de trabalho encontrar uma Persist atividade antes da TransactedReceiveScope atividade, o runtime tenta persistir sob a transação ambiente. Este comportamento provoca um bloqueio até que a transação seja concluída. Como a execução do fluxo de trabalho não chegou à Body secção, a transação não pode terminar. Este bloqueio faz com que o fluxo de trabalho pare de responder até que a transação expire. Quando a transação expira, a instância recém-criada é abortada.
Importante
Sempre que utilizar um TransactedReceiveScope, recomenda-se colocar todos os Receives no fluxo de trabalho dentro das atividades TransactedReceiveScope.
Importante
Ao usar TransactedReceiveScope e as mensagens chegarem na ordem incorreta, o fluxo de trabalho será abortado ao tentar entregar a primeira mensagem fora de ordem. Certifique-se de que o seu fluxo de trabalho esteja sempre num ponto de paragem consistente quando estiver inativo. Isso permitirá que você reinicie o fluxo de trabalho a partir de um ponto de persistência anterior, caso o fluxo de trabalho seja abortado.
Construtores
| Name | Description |
|---|---|
| TransactedReceiveScope() |
Inicializa uma nova instância da TransactedReceiveScope classe. |
Propriedades
| Name | Description |
|---|---|
| Body |
Obtém ou estabelecem o Activity que compõe o corpo da TransactedReceiveScope 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) |
| 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) |
| Request |
Obtém ou define a Receive atividade associada a esta TransactedReceiveScope atividade. |
| Variables |
Obtém a coleção de Variable associada a isto TransactedReceiveScope. |
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) |
Cria e valida uma descrição dos argumentos, variáveis, atividades filhos e delegados de atividade da atividade. (Herdado de NativeActivity) |
| 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) |
Quando implementado numa classe derivada, executa a lógica de execução da atividade. (Herdado de NativeActivity) |
| 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) |
| 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) |