Partager via


ISubscriptionClient Interface

Définition

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

public interface ISubscriptionClient : Microsoft.Azure.ServiceBus.Core.IReceiverClient
type ISubscriptionClient = interface
    interface IReceiverClient
    interface IClientEntity
Public Interface ISubscriptionClient
Implements IReceiverClient
Dérivé
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

Utilisez MessageReceiver pour un ensemble avancé de fonctionnalités.

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 IClientEntity)
IsClosedOrClosing

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

(Hérité de IClientEntity)
OperationTimeout

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

(Hérité de IClientEntity)
OwnsConnection

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

(Hérité de IClientEntity)
Path

Obtient le chemin d’accès de l’entité.

(Hérité de IClientEntity)
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.

(Hérité de IReceiverClient)
ReceiveMode

Obtient le ReceiveMode du récepteur actuel.

(Hérité de IReceiverClient)
RegisteredPlugins

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

(Hérité de IClientEntity)
ServiceBusConnection

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

(Hérité de IClientEntity)
SubscriptionName

Obtient le nom de l’abonnement.

TopicPath

Obtient le chemin de la rubrique, pour cet abonnement.

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.

(Hérité de IReceiverClient)
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 IClientEntity)
CompleteAsync(String)

Effectue une opération à l’aide Message de son jeton de verrouillage. Cela supprime le message de la file d’attente.

(Hérité de IReceiverClient)
DeadLetterAsync(String, IDictionary<String,Object>)

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

(Hérité de IReceiverClient)
DeadLetterAsync(String, String, String)

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

(Hérité de IReceiverClient)
GetRulesAsync()

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

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.

(Hérité de IReceiverClient)
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.

(Hérité de IReceiverClient)
RegisterPlugin(ServiceBusPlugin)

Inscrit un ServiceBusPlugin à utiliser avec ce client.

(Hérité de IClientEntity)
RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>)

Recevez des messages de session en continu à partir de l’abonnement. 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 l’abonnement. 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.

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.

(Hérité de IReceiverClient)
UnregisterPlugin(String)

Annule l’inscription d’un ServiceBusPlugin.

(Hérité de IClientEntity)
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 à