Partilhar via


MessageReceiver Classe

Definição

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

public class MessageReceiver : Microsoft.Azure.ServiceBus.ClientEntity, Microsoft.Azure.ServiceBus.Core.IMessageReceiver
type MessageReceiver = class
    inherit ClientEntity
    interface IMessageReceiver
    interface IReceiverClient
    interface IClientEntity
Public Class MessageReceiver
Inherits ClientEntity
Implements IMessageReceiver
Herança
MessageReceiver
Implementações

Exemplos

Criar um novo MessageReceiver para receber uma mensagem de uma assinatura

IMessageReceiver messageReceiver = new MessageReceiver(
    namespaceConnectionString,
    EntityNameHelper.FormatSubscriptionPath(topicName, subscriptionName),
    ReceiveMode.PeekLock);

Receba uma mensagem da Assinatura.

var message = await messageReceiver.ReceiveAsync();
await messageReceiver.CompleteAsync(message.SystemProperties.LockToken);

Comentários

O MessageReceiver fornece funcionalidade avançada que não é encontrada no QueueClient ou SubscriptionClientno . Por exemplo, ReceiveAsync(), que permite que você receba mensagens sob demanda, mas também exige que você renove manualmente os bloqueios usando RenewLockAsync(Message). Ele usa o protocolo AMQP para se comunicar com o serviço.

Construtores

MessageReceiver(ServiceBusConnection, String, ReceiveMode, RetryPolicy, Int32)

Cria um novo MessageReceiver AMQP em um determinado ServiceBusConnection

MessageReceiver(ServiceBusConnectionStringBuilder, ReceiveMode, RetryPolicy, Int32)

Cria um novo MessageReceiver de um ServiceBusConnectionStringBuilder.

MessageReceiver(String, String, ITokenProvider, TransportType, ReceiveMode, RetryPolicy, Int32)

Cria um novo MessageReceiver de um ponto de extremidade, caminho de entidade e provedor de token especificados.

MessageReceiver(String, String, ReceiveMode, RetryPolicy, Int32)

Cria um novo MessageReceiver de uma cadeia de conexão e um caminho de entidade especificados.

Propriedades

ClientId

Obtém a ID para identificar esse cliente. Isso pode ser usado para correlacionar logs e exceções.

(Herdado de ClientEntity)
IsClosedOrClosing

Retornará true se o cliente estiver fechado ou fechado.

(Herdado de ClientEntity)
LastPeekedSequenceNumber

Obtém o número de sequência da última mensagem espiada.

OperationTimeout

Duração após a qual as operações individuais terão tempo limite.

OwnsConnection

Retornará true se a conexão for de propriedade e false se a conexão for compartilhada.

(Herdado de ClientEntity)
Path

O caminho da entidade para esse receptor. Para Filas, esse será o nome, mas para Assinaturas, esse será o caminho.

PrefetchCount

A pré-busca acelera o fluxo de mensagens com o objetivo de ter uma mensagem prontamente disponível para recuperação local quando e antes que o aplicativo solicite uma usando Receive. Definir um valor diferente de zero pré-busca o número de mensagens PrefetchCount. Definir o valor como zero desativa a pré-busca. Assume o padrão de 0.

ReceiveMode

Obtém o ReceiveMode do receptor atual.

RegisteredPlugins

Obtém uma lista de plug-ins registrados no momento.

RetryPolicy

Obtém o RetryPolicy definido no cliente.

(Herdado de ClientEntity)
ServiceBusConnection

Objeto de conexão com o namespace do barramento de serviço.

Métodos

AbandonAsync(String, IDictionary<String,Object>)

Abandona um Message usando um token de bloqueio. Isso disponibilizará a mensagem novamente para processamento.

CloseAsync()

Fecha o Cliente. Fecha as conexões abertas por ela.

(Herdado de ClientEntity)
CompleteAsync(IEnumerable<String>)

Conclui uma série de Message usando uma lista de tokens de bloqueio. Isso excluirá a mensagem do serviço.

CompleteAsync(String)

Conclui um Message usando seu token de bloqueio. Isso excluirá a mensagem do serviço.

DeadLetterAsync(String, IDictionary<String,Object>)

Move uma mensagem para a sub-fila de mensagens mortas.

DeadLetterAsync(String, String, String)

Move uma mensagem para a sub-fila de mensagens mortas.

DeferAsync(String, IDictionary<String,Object>)

Indica que o receptor deseja adiar o processamento da mensagem.

OnAbandonAsync(String, IDictionary<String,Object>)

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnClosingAsync()

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnCompleteAsync(IEnumerable<String>)

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnDeadLetterAsync(String, IDictionary<String,Object>, String, String)

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnDeferAsync(String, IDictionary<String,Object>)

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnMessageHandler(MessageHandlerOptions, Func<Message,CancellationToken,Task>)

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnPeekAsync(Int64, Int32)

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnReceiveAsync(Int32, TimeSpan)

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnReceiveDeferredMessageAsync(Int64[])

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

OnRenewLockAsync(String)

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e reconhecê-las.

PeekAsync()

Busca a próxima mensagem ativa sem alterar o estado do receptor ou da origem da mensagem.

PeekAsync(Int32)

Busca o próximo lote de mensagens ativas sem alterar o estado do receptor ou da origem da mensagem.

PeekBySequenceNumberAsync(Int64)

Lê de forma assíncrona a próxima mensagem sem alterar o estado do receptor ou da origem da mensagem.

PeekBySequenceNumberAsync(Int64, Int32)

Espia um lote de mensagens.

ReceiveAsync()

Receba uma mensagem da entidade definida Path usando ReceiveMode o modo .

ReceiveAsync(Int32)

Recebe um máximo de maxMessageCount mensagens da entidade definida Path usando ReceiveMode o modo .

ReceiveAsync(Int32, TimeSpan)

Recebe um máximo de maxMessageCount mensagens da entidade definida Path usando ReceiveMode o modo .

ReceiveAsync(TimeSpan)

Receba uma mensagem da entidade definida Path usando ReceiveMode o modo .

ReceiveDeferredMessageAsync(IEnumerable<Int64>)

Recebe um IList<T> de mensagens adiadas identificadas por sequenceNumbers.

ReceiveDeferredMessageAsync(Int64)

Recebe uma mensagem adiada específica identificada por sequenceNumber.

RegisterMessageHandler(Func<Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>)

Receber mensagens continuamente da entidade. Registra um manipulador de mensagens e inicia um novo thread para receber mensagens. Esse manipulador(Func<T1,T2,TResult>) é aguardado sempre que uma nova mensagem é recebida pelo receptor.

RegisterMessageHandler(Func<Message,CancellationToken,Task>, MessageHandlerOptions)

Receber mensagens continuamente da entidade. Registra um manipulador de mensagens e inicia um novo thread para receber mensagens. Esse manipulador(Func<T1,T2,TResult>) é aguardado sempre que uma nova mensagem é recebida pelo receptor.

RegisterPlugin(ServiceBusPlugin)

Registra um ServiceBusPlugin a ser usado com esse receptor.

RenewLockAsync(Message)

Renova o bloqueio na mensagem especificada pelo token de bloqueio. O bloqueio será renovado com base na configuração especificada na fila.

RenewLockAsync(String)

Renova o bloqueio na mensagem. O bloqueio será renovado com base na configuração especificada na fila. Nova data e hora de expiração do token de bloqueio no formato UTC.

ThrowIfClosed()

Gere uma OperationCanceledException se o objeto estiver fechando.

(Herdado de ClientEntity)
UnregisterMessageHandlerAsync(TimeSpan)

Cancele o registro do manipulador de mensagens do receptor se houver um manipulador de mensagens ativo registrado. Esta operação aguarda a conclusão das operações de recebimento e tratamento de mensagens de bordo para concluir e cancela o registro de recebimentos futuros no manipulador de mensagens registrado anteriormente.

UnregisterPlugin(String)

Cancela o registro de um ServiceBusPlugin.

Aplica-se a