SubscriptionClient Classe
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.
SubscriptionClient pode ser usado para todas as interações básicas com uma Assinatura do Barramento de Serviço.
public class SubscriptionClient : Microsoft.Azure.ServiceBus.ClientEntity, Microsoft.Azure.ServiceBus.ISubscriptionClient
type SubscriptionClient = class
inherit ClientEntity
interface ISubscriptionClient
interface IReceiverClient
interface IClientEntity
Public Class SubscriptionClient
Inherits ClientEntity
Implements ISubscriptionClient
- Herança
- Implementações
Exemplos
Criar uma assinaturaClient
ISubscriptionClient subscriptionClient = new SubscriptionClient(
namespaceConnectionString,
topicName,
subscriptionName,
ReceiveMode.PeekLock,
RetryExponential);
Registre um manipulador de mensagens que será invocado sempre que uma mensagem for recebida.
subscriptionClient.RegisterMessageHandler(
async (message, token) =>
{
// Process the message
Console.WriteLine($"Received message: SequenceNumber:{message.SystemProperties.SequenceNumber} Body:{Encoding.UTF8.GetString(message.Body)}");
// Complete the message so that it is not received again.
// This can be done only if the subscriptionClient is opened in ReceiveMode.PeekLock mode.
await subscriptionClient.CompleteAsync(message.SystemProperties.LockToken);
},
async (exceptionEvent) =>
{
// Process the exception
Console.WriteLine("Exception = " + exceptionEvent.Exception);
return Task.CompletedTask;
});
Comentários
Ele usa o protocolo AMQP para se comunicar com o barramento de serviço. Use MessageReceiver para o conjunto avançado de funcionalidades.
Construtores
SubscriptionClient(ServiceBusConnection, String, String, ReceiveMode, RetryPolicy) |
Cria uma nova instância do cliente de assinatura em um determinado ServiceBusConnection |
SubscriptionClient(ServiceBusConnectionStringBuilder, String, ReceiveMode, RetryPolicy) |
Cria uma instância de um novo SubscriptionClient para executar operações em uma assinatura. |
SubscriptionClient(String, String, String, ITokenProvider, TransportType, ReceiveMode, RetryPolicy) |
Cria uma nova instância do cliente de Assinatura usando o ponto de extremidade, o caminho da entidade e o provedor de token especificados. |
SubscriptionClient(String, String, String, ReceiveMode, RetryPolicy) |
Cria uma instância de um novo SubscriptionClient para executar operações em uma assinatura. |
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) |
OperationTimeout |
Duração após a qual as operações individuais atingirão 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 |
Obtém o caminho formatado do cliente de assinatura. |
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. |
ReceiveMode |
Obtém o ReceiveMode para o SubscriptionClient. |
RegisteredPlugins |
Obtém uma lista de plug-ins registrados no momento para esta SubscriptionClient. |
RetryPolicy |
Obtém o RetryPolicy definido no cliente. (Herdado de ClientEntity) |
ServiceBusConnection |
Objeto de conexão com o namespace do barramento de serviço. |
SubscriptionName |
Obtém o nome da assinatura. |
TopicPath |
Obtém o caminho do tópico correspondente. |
Métodos
AbandonAsync(String, IDictionary<String,Object>) |
Abandona um Message usando um token de bloqueio. Isso disponibilizará a mensagem novamente para processamento. |
AddRuleAsync(RuleDescription) |
Adiciona uma regra à assinatura atual para filtrar as mensagens que chegam do tópico à assinatura. |
AddRuleAsync(String, Filter) |
Adiciona uma regra à assinatura atual para filtrar as mensagens que chegam do tópico à assinatura. |
CloseAsync() |
Fecha o Cliente. Fecha as conexões abertas por ela. (Herdado de ClientEntity) |
CompleteAsync(String) |
Conclui um Message usando seu token de bloqueio. Isso excluirá a mensagem da assinatura. |
DeadLetterAsync(String) |
Move uma mensagem para a sub-fila de deadletter. |
DeadLetterAsync(String, IDictionary<String,Object>) |
Move uma mensagem para a sub-fila de deadletter. |
DeadLetterAsync(String, String, String) |
Move uma mensagem para a sub-fila de deadletter. |
GetRulesAsync() |
Obtenha todas as regras associadas à assinatura. |
OnClosingAsync() |
SubscriptionClient pode ser usado para todas as interações básicas com uma Assinatura do Barramento de Serviço. |
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 para receber mensagens do Barramento de Serviço. |
RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>) |
Receber mensagens de sessão continuamente da fila. Registra um manipulador de mensagens e inicia um novo thread para receber mensagens de sessão. Esse manipulador(Func<T1,T2,T3,TResult>) é aguardado sempre que uma nova mensagem é recebida pelo cliente de assinatura. |
RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, SessionHandlerOptions) |
Receber mensagens de sessão continuamente da fila. Registra um manipulador de mensagens e inicia um novo thread para receber mensagens de sessão. Esse manipulador(Func<T1,T2,T3,TResult>) é aguardado sempre que uma nova mensagem é recebida pelo cliente de assinatura. |
RemoveRuleAsync(String) |
Remove a regra na assinatura identificada por |
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 a bordo para concluir e cancelar o registro de recebimentos futuros no manipulador de mensagens registrado anteriormente. |
UnregisterPlugin(String) |
Cancela o registro de um ServiceBusPlugin. |
UnregisterSessionHandlerAsync(TimeSpan) |
Cancele o registro do manipulador de sessão do receptor se houver um manipulador de sessão ativo registrado. Essa operação aguarda a conclusão das operações de recebimento e tratamento de sessão de bordo para concluir e cancelar o registro de recebimentos futuros no manipulador de sessão registrado anteriormente. |
Aplica-se a
Azure SDK for .NET