Partager via


SubscriptionClient Classe

Définition

SubscriptionClient peut être utilisé pour toutes les interactions de base avec un abonnement Service Bus.

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
Héritage
SubscriptionClient
Implémente

Exemples

Créer un abonnementClient

ISubscriptionClient subscriptionClient = new SubscriptionClient(
    namespaceConnectionString,
    topicName,
    subscriptionName,
    ReceiveMode.PeekLock,
    RetryExponential);

Inscrivez un gestionnaire de messages qui sera appelé chaque fois qu’un message est reçu.

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;
       });

Remarques

Il utilise le protocole AMQP pour communiquer avec Service Bus. Utilisez MessageReceiver pour un ensemble avancé de fonctionnalités.

Constructeurs

SubscriptionClient(ServiceBusConnection, String, String, ReceiveMode, RetryPolicy)

Crée une instance du client d’abonnement sur une donnéeServiceBusConnection

SubscriptionClient(ServiceBusConnectionStringBuilder, String, ReceiveMode, RetryPolicy)

Instancie un nouveau SubscriptionClient pour effectuer des opérations sur un abonnement.

SubscriptionClient(String, String, String, ITokenProvider, TransportType, ReceiveMode, RetryPolicy)

Crée une instance du client d’abonnement à l’aide du point de terminaison, du chemin d’accès d’entité et du fournisseur de jeton spécifiés.

SubscriptionClient(String, String, String, ReceiveMode, RetryPolicy)

Instancie un nouveau SubscriptionClient pour effectuer des opérations sur un abonnement.

Propriétés

ClientId

Obtient l’ID permettant d’identifier ce client. Cela peut être utilisé pour mettre en corrélation les journaux et les exceptions.

(Hérité de ClientEntity)
IsClosedOrClosing

Retourne true si le client est fermé ou fermé.

(Hérité de ClientEntity)
OperationTimeout

Durée après laquelle les opérations individuelles expirent.

OwnsConnection

Retourne true si la connexion est détenue et false si la connexion est partagée.

(Hérité de ClientEntity)
Path

Obtient le chemin d’accès mis en forme du client d’abonnement.

PrefetchCount

La préversion accélère le flux de message en visant à avoir un message facilement disponible pour la récupération locale lorsque et avant que l’application en demande un à l’aide de La réception. La définition d’une valeur autre que zéro préfète le nombre de messages PrefetchCount. La définition de la valeur sur zéro désactive la prérécupération. La valeur par défaut est 0.

ReceiveMode

Obtient le ReceiveMode pour subscriptionClient.

RegisteredPlugins

Obtient la liste des plug-ins actuellement inscrits pour ce SubscriptionClient.

RetryPolicy

Obtient le RetryPolicy défini sur le client.

(Hérité de ClientEntity)
ServiceBusConnection

Objet de connexion à l’espace de noms service bus.

SubscriptionName

Obtient le nom de l'abonnement.

TopicPath

Obtient le chemin d’accès de la rubrique correspondante.

Méthodes

AbandonAsync(String, IDictionary<String,Object>)

Abandonne un à l’aide d’un Message jeton de verrou. Cela rend le message à nouveau disponible pour traitement.

AddRuleAsync(RuleDescription)

Ajoute une règle à l’abonnement actuel pour filtrer les messages qui arrivent de la rubrique à l’abonnement.

AddRuleAsync(String, Filter)

Ajoute une règle à l’abonnement actuel pour filtrer les messages qui arrivent de la rubrique à l’abonnement.

CloseAsync()

Ferme le client. Ferme les connexions ouvertes par celui-ci.

(Hérité de ClientEntity)
CompleteAsync(String)

Effectue une opération à l’aide Message de son jeton de verrouillage. Cela supprime le message de l’abonnement.

DeadLetterAsync(String)

Déplace un message vers la sous-file d’attente deadletter.

DeadLetterAsync(String, IDictionary<String,Object>)

Déplace un message vers la sous-file d’attente deadletter.

DeadLetterAsync(String, String, String)

Déplace un message vers la sous-file d’attente deadletter.

GetRulesAsync()

Obtenez toutes les règles associées à l’abonnement.

OnClosingAsync()

SubscriptionClient peut être utilisé pour toutes les interactions de base avec un abonnement Service Bus.

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

Recevez des messages en continu à partir de l’entité. Inscrit un gestionnaire de messages et commence un nouveau thread pour recevoir des messages. Ce gestionnaire(Func<T1,T2,TResult>) est attendu chaque fois qu’un nouveau message est reçu par le destinataire.

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

Recevez des messages en continu à partir de l’entité. Inscrit un gestionnaire de messages et commence un nouveau thread pour recevoir des messages. Ce gestionnaire(Func<T1,T2,TResult>) est attendu chaque fois qu’un nouveau message est reçu par le destinataire.

RegisterPlugin(ServiceBusPlugin)

Inscrit un ServiceBusPlugin à utiliser pour recevoir des messages à partir de Service Bus.

RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>)

Recevez des messages de session en continu à partir de la file d’attente. Inscrit un gestionnaire de messages et commence un nouveau thread pour recevoir des messages de session. Ce gestionnaire(Func<T1,T2,T3,TResult>) est attendu chaque fois qu’un nouveau message est reçu par le client d’abonnement.

RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, SessionHandlerOptions)

Recevez des messages de session en continu à partir de la file d’attente. Inscrit un gestionnaire de messages et commence un nouveau thread pour recevoir des messages de session. Ce gestionnaire(Func<T1,T2,T3,TResult>) est attendu chaque fois qu’un nouveau message est reçu par le client d’abonnement.

RemoveRuleAsync(String)

Supprime la règle sur l’abonnement identifié par ruleName.

ThrowIfClosed()

Lève une exception OperationCanceledException si l’objet est Closing.

(Hérité de ClientEntity)
UnregisterMessageHandlerAsync(TimeSpan)

Désinscrire le gestionnaire de messages du récepteur s’il existe un gestionnaire de messages actif inscrit. Cette opération attend la fin des opérations de réception en vol et de gestion des messages pour se terminer et annule l’inscription des futures réceptions sur le gestionnaire de messages précédemment inscrit.

UnregisterPlugin(String)

Annule l’inscription d’un ServiceBusPlugin.

UnregisterSessionHandlerAsync(TimeSpan)

Désinscrire le gestionnaire de session du récepteur s’il existe un gestionnaire de session actif inscrit. Cette opération attend que la fin des opérations de réception et de gestion de session en vol se termine et annule l’inscription des futures réceptions sur le gestionnaire de session précédemment inscrit.

S’applique à