ProcessSessionMessageEventArgs.DeferMessageAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Indica que o receptor deseja adiar o processamento da mensagem.
public virtual System.Threading.Tasks.Task DeferMessageAsync (Azure.Messaging.ServiceBus.ServiceBusReceivedMessage message, System.Collections.Generic.IDictionary<string,object> propertiesToModify = default, System.Threading.CancellationToken cancellationToken = default);
abstract member DeferMessageAsync : Azure.Messaging.ServiceBus.ServiceBusReceivedMessage * System.Collections.Generic.IDictionary<string, obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.DeferMessageAsync : Azure.Messaging.ServiceBus.ServiceBusReceivedMessage * System.Collections.Generic.IDictionary<string, obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overridable Function DeferMessageAsync (message As ServiceBusReceivedMessage, Optional propertiesToModify As IDictionary(Of String, Object) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- message
- ServiceBusReceivedMessage
O ServiceBusReceivedMessage a ser adiado.
- propertiesToModify
- IDictionary<String,Object>
As propriedades da mensagem a ser modificada ao adiar a mensagem.
- cancellationToken
- CancellationToken
Uma instância opcional CancellationToken para sinalizar a solicitação para cancelar a operação.
Retornos
Uma tarefa a ser resolvida quando a operação for concluída.
Exceções
- O bloqueio da mensagem expirou ou a mensagem já foi concluída. Isso não se aplica a entidades habilitadas para sessão. O Reason será definido como MessageLockLost neste caso.
- O bloqueio da sessão expirou ou a mensagem já foi concluída. Isso só se aplica a entidades habilitadas para sessão. O Reason será definido como SessionLockLost neste caso.
Comentários
Para receber essa mensagem novamente no futuro, você precisará salvá-la SequenceNumber e recebê-la usando ReceiveDeferredMessageAsync(Int64, CancellationToken). Adiar mensagens não afeta a expiração da mensagem, o que significa que as mensagens adiadas ainda podem expirar. Essa operação só pode ser executada em mensagens recebidas por esse receptor.
Aplica-se a
Azure SDK for .NET