IMessageReceiver Interface

Definição

O MessageReceiver pode ser usado para receber mensagens de Filas e Assinaturas e confirmá-las.

public interface IMessageReceiver : Microsoft.Azure.ServiceBus.Core.IReceiverClient
type IMessageReceiver = interface
    interface IReceiverClient
    interface IClientEntity
Public Interface IMessageReceiver
Implements IReceiverClient
Derivado
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 SubscriptionClient. Por exemplo, ReceiveAsync(), que permite que você receba mensagens sob demanda, mas também exige que você renove manualmente os bloqueios usando RenewLockAsync(Message).

Propriedades

ClientId

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

(Herdado de IClientEntity)
IsClosedOrClosing

Retornará true se o cliente estiver fechado ou fechado.

(Herdado de IClientEntity)
LastPeekedSequenceNumber

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

OperationTimeout

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

(Herdado de IClientEntity)
OwnsConnection

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

(Herdado de IClientEntity)
Path

Obtém o caminho da entidade.

(Herdado de IClientEntity)
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 prefetchCount de mensagens. Definir o valor como zero desativa a pré-busca. Assume o padrão de 0.

(Herdado de IReceiverClient)
ReceiveMode

Obtém o ReceiveMode do receptor atual.

(Herdado de IReceiverClient)
RegisteredPlugins

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

(Herdado de IClientEntity)
ServiceBusConnection

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

(Herdado de IClientEntity)

Métodos

AbandonAsync(String, IDictionary<String,Object>)

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

(Herdado de IReceiverClient)
CloseAsync()

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

(Herdado de IClientEntity)
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 da fila.

(Herdado de IReceiverClient)
DeadLetterAsync(String, IDictionary<String,Object>)

Move uma mensagem para a sub-fila de deadletter.

(Herdado de IReceiverClient)
DeadLetterAsync(String, String, String)

Move uma mensagem para a sub-fila de deadletter.

(Herdado de IReceiverClient)
DeferAsync(String, IDictionary<String,Object>)

Indica que o receptor deseja adiar o processamento da mensagem.

PeekAsync()

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

PeekAsync(Int32)

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

PeekBySequenceNumberAsync(Int64)

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

PeekBySequenceNumberAsync(Int64, Int32)

Espia um lote de mensagens.

ReceiveAsync()

Receba uma mensagem da entidade definida usando PathReceiveMode o modo .

ReceiveAsync(Int32)

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

ReceiveAsync(Int32, TimeSpan)

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

ReceiveAsync(TimeSpan)

Receba uma mensagem da entidade definida usando PathReceiveMode o modo .

ReceiveDeferredMessageAsync(IEnumerable<Int64>)

Recebe uma IList<T> das 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.

(Herdado de IReceiverClient)
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.

(Herdado de IReceiverClient)
RegisterPlugin(ServiceBusPlugin)

Registra um ServiceBusPlugin a ser usado com esse cliente.

(Herdado de IClientEntity)
RenewLockAsync(Message)

Renova o bloqueio na mensagem. 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.

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 a bordo para concluir e cancelar o registro de recebimentos futuros no manipulador de mensagens registrado anteriormente.

(Herdado de IReceiverClient)
UnregisterPlugin(String)

Cancela o registro de um ServiceBusPlugin.

(Herdado de IClientEntity)

Aplica-se a

Confira também