Freigeben über


IMessageSession Schnittstelle

Definition

Beschreibt ein Session-Objekt. IMessageSession kann verwendet werden, um Vorgänge in Sitzungen auszuführen.

public interface IMessageSession : Microsoft.Azure.ServiceBus.Core.IMessageReceiver
type IMessageSession = interface
    interface IMessageReceiver
    interface IReceiverClient
    interface IClientEntity
Public Interface IMessageSession
Implements IMessageReceiver
Implementiert

Hinweise

Service Bus-Sitzungen, die im AMQP 1.0-Protokoll auch "Gruppen" genannt werden, sind ungebundene Sequenzen verwandter Nachrichten. ServiceBus garantiert die Reihenfolge von Nachrichten in einer Sitzung.

Jeder Absender kann beim Senden von Nachrichten an ein Thema oder eine Warteschlange eine Sitzung erstellen, indem er die Eigenschaft für Message auf einen von der SessionId Anwendung definierten eindeutigen Bezeichner festlegt. Auf der AMQP 1.0-Protokollebene ist dieser Wert der group-id-Eigenschaft zugeordnet.

Sitzungen werden erstellt, wenn mindestens eine Nachricht mit der SessionId der Sitzung im Warteschlangen- oder Themenabonnement vorhanden ist. Sobald eine Sitzung vorhanden ist, gibt es keinen definierten Moment oder keine definierte Geste für den Zeitpunkt, zu dem die Sitzung abläuft oder verschwindet.

Eigenschaften

ClientId

Ruft die ID ab, um diesen Client zu identifizieren. Dies kann verwendet werden, um Protokolle und Ausnahmen zu korrelieren.

(Geerbt von IClientEntity)
IsClosedOrClosing

Gibt true zurück, wenn der Client geschlossen oder geschlossen ist.

(Geerbt von IClientEntity)
LastPeekedSequenceNumber

Ruft die Sequenznummer der zuletzt angezeigten Nachricht ab.

(Geerbt von IMessageReceiver)
LockedUntilUtc

Ruft die Zeit ab, die die von identifizierte SessionId Sitzung für diesen Client gesperrt ist.

OperationTimeout

Dauer, nach der für einzelne Vorgänge ein Timeout auftritt.

(Geerbt von IClientEntity)
OwnsConnection

Gibt true zurück, wenn die Verbindung im Besitz ist, und false, wenn die Verbindung freigegeben wird.

(Geerbt von IClientEntity)
Path

Ruft den Entitätspfad ab.

(Geerbt von IClientEntity)
PrefetchCount

Prefetch beschleunigt den Nachrichtenfluss, indem eine Nachricht für den lokalen Abruf verfügbar ist, wenn und bevor die Anwendung mithilfe von Receive nach einer Nachricht fragt. Wenn Sie einen Wert ungleich 0 festlegen, wird die PrefetchCount-Anzahl von Nachrichten vorab angezeigt. Wenn Sie den Wert auf 0 festlegen, wird das Prefetch deaktiviert. Der Standardwert ist 0.

(Geerbt von IReceiverClient)
ReceiveMode

Ruft den ReceiveMode des aktuellen Empfängers ab.

(Geerbt von IReceiverClient)
RegisteredPlugins

Ruft eine Liste der aktuell registrierten Plug-Ins für diesen Client ab.

(Geerbt von IClientEntity)
ServiceBusConnection

Verbindungsobjekt mit dem Service Bus-Namespace.

(Geerbt von IClientEntity)
SessionId

Ruft die SessionId ab.

Methoden

AbandonAsync(String, IDictionary<String,Object>)

Beendet ein Message mithilfe eines Sperrtokens. Dadurch wird die Nachricht wieder für die Verarbeitung verfügbar.

(Geerbt von IReceiverClient)
CloseAsync()

Schließt den Client. Schließt die von ihr geöffneten Verbindungen.

(Geerbt von IClientEntity)
CompleteAsync(IEnumerable<String>)

Schließt eine Reihe der Message Verwendung einer Liste von Sperrtoken ab. Dadurch wird die Nachricht aus dem Dienst gelöscht.

(Geerbt von IMessageReceiver)
CompleteAsync(String)

Schließt ein Message mithilfe des zugehörigen Sperrtokens ab. Dadurch wird die Nachricht aus der Warteschlange gelöscht.

(Geerbt von IReceiverClient)
DeadLetterAsync(String, IDictionary<String,Object>)

Verschiebt eine Nachricht in die Unterwarteschlange des Deadletters.

(Geerbt von IReceiverClient)
DeadLetterAsync(String, String, String)

Verschiebt eine Nachricht in die Unterwarteschlange des Deadletters.

(Geerbt von IReceiverClient)
DeferAsync(String, IDictionary<String,Object>)

Gibt an, dass der Empfänger die Verarbeitung für die Nachricht zurückstellen möchte.

(Geerbt von IMessageReceiver)
GetStateAsync()

Ruft den Sitzungsstatus ab.

PeekAsync()

Ruft die nächste aktive Nachricht ab, ohne den Status des Empfängers oder der Nachrichtenquelle zu ändern.

(Geerbt von IMessageReceiver)
PeekAsync(Int32)

Ruft den nächsten Batch aktiver Nachrichten ab, ohne den Status des Empfängers oder der Nachrichtenquelle zu ändern.

(Geerbt von IMessageReceiver)
PeekBySequenceNumberAsync(Int64)

Liest die nächste Nachricht asynchron, ohne den Status des Empfängers oder der Nachrichtenquelle zu ändern.

(Geerbt von IMessageReceiver)
PeekBySequenceNumberAsync(Int64, Int32)

Hier wird ein Batch von Nachrichten angezeigt.

(Geerbt von IMessageReceiver)
ReceiveAsync()

Empfangen sie eine Nachricht von der Entität, die mithilfe ReceiveMode des Modus definiert istPath.

(Geerbt von IMessageReceiver)
ReceiveAsync(Int32)

Empfängt ein Maximum an maxMessageCount Nachrichten von der Entität, die im ReceiveMode Modus definiert istPath.

(Geerbt von IMessageReceiver)
ReceiveAsync(Int32, TimeSpan)

Empfängt ein Maximum an maxMessageCount Nachrichten von der Entität, die im ReceiveMode Modus definiert istPath.

(Geerbt von IMessageReceiver)
ReceiveAsync(TimeSpan)

Empfangen sie eine Nachricht von der Entität, die mithilfe ReceiveMode des Modus definiert istPath.

(Geerbt von IMessageReceiver)
ReceiveDeferredMessageAsync(IEnumerable<Int64>)

Empfängt eine IList<T> von verzögerten Nachrichten, die durch identifiziert werden sequenceNumbers.

(Geerbt von IMessageReceiver)
ReceiveDeferredMessageAsync(Int64)

Empfängt eine bestimmte verzögerte Nachricht, die durch identifiziert wird sequenceNumber.

(Geerbt von IMessageReceiver)
RegisterMessageHandler(Func<Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>)

Empfangen Sie kontinuierlich Nachrichten von der Entität. Registriert einen Nachrichtenhandler und beginnt einen neuen Thread zum Empfangen von Nachrichten. Dieser handler(Func<T1,T2,TResult>) wird jedes Mal erwartet, wenn eine neue Nachricht vom Empfänger empfangen wird.

(Geerbt von IReceiverClient)
RegisterMessageHandler(Func<Message,CancellationToken,Task>, MessageHandlerOptions)

Empfangen Sie kontinuierlich Nachrichten von der Entität. Registriert einen Nachrichtenhandler und beginnt einen neuen Thread zum Empfangen von Nachrichten. Dieser handler(Func<T1,T2,TResult>) wird jedes Mal erwartet, wenn eine neue Nachricht vom Empfänger empfangen wird.

(Geerbt von IReceiverClient)
RegisterPlugin(ServiceBusPlugin)

Registriert eine ServiceBusPlugin , die mit diesem Client verwendet werden soll.

(Geerbt von IClientEntity)
RenewLockAsync(Message)

Erneuert die Sperre für die Nachricht. Die Sperre wird basierend auf der in der Warteschlange angegebenen Einstellung verlängert.

(Geerbt von IMessageReceiver)
RenewLockAsync(String)

Erneuert die Sperre für die Nachricht. Die Sperre wird basierend auf der in der Warteschlange angegebenen Einstellung verlängert. Datum und Uhrzeit des Neuen Sperrtokenablaufs im UTC-Format.

(Geerbt von IMessageReceiver)
RenewSessionLockAsync()

Erneuert die Sperre für die sitzung, die durch angegeben SessionIdwird. Die Sperre wird basierend auf der für die Entität angegebenen Einstellung verlängert.

SetStateAsync(Byte[])

Legen Sie einen benutzerdefinierten Zustand für die Sitzung fest, der später mit abgerufen werden kann. GetStateAsync()

UnregisterMessageHandlerAsync(TimeSpan)

Heben Sie die Registrierung des Nachrichtenhandlers vom Empfänger auf, wenn ein aktiver Nachrichtenhandler registriert ist. Dieser Vorgang wartet darauf, dass der Abschluss von Empfangs- und Nachrichtenverarbeitungsvorgängen an Bord abgeschlossen ist, und hebt die Registrierung zukünftiger Empfänge für den zuvor registrierten Nachrichtenhandler auf.

(Geerbt von IReceiverClient)
UnregisterPlugin(String)

Hebt die Registrierung eines auf ServiceBusPlugin.

(Geerbt von IClientEntity)

Gilt für: