IMessageReceiver Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
MessageReceiver kann verwendet werden, um Nachrichten von Warteschlangen und Abonnements zu empfangen und zu bestätigen.
public interface IMessageReceiver : Microsoft.Azure.ServiceBus.Core.IReceiverClient
type IMessageReceiver = interface
interface IReceiverClient
interface IClientEntity
Public Interface IMessageReceiver
Implements IReceiverClient
- Abgeleitet
- Implementiert
Beispiele
Erstellen eines neuen MessageReceiver zum Empfangen einer Nachricht aus einem Abonnement
IMessageReceiver messageReceiver = new MessageReceiver(
namespaceConnectionString,
EntityNameHelper.FormatSubscriptionPath(topicName, subscriptionName),
ReceiveMode.PeekLock);
Empfangen einer Nachricht aus dem Abonnement.
var message = await messageReceiver.ReceiveAsync();
await messageReceiver.CompleteAsync(message.SystemProperties.LockToken);
Hinweise
MessageReceiver bietet erweiterte Funktionen, die in oder QueueClientSubscriptionClientnicht gefunden werden. Für instance ReceiveAsync(), die ihnen ermöglicht, Nachrichten bei Bedarf zu empfangen, aber auch erfordert, dass Sie Sperren manuell mit RenewLockAsync(Message)erneuern.
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 wird. (Geerbt von IClientEntity) |
LastPeekedSequenceNumber |
Ruft die Sequenznummer der letzten eingesehenen Nachricht ab. |
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 ist. (Geerbt von IClientEntity) |
Path |
Ruft den Entitätspfad ab. (Geerbt von IClientEntity) |
PrefetchCount |
Der Vorabruf beschleunigt den Nachrichtenfluss, indem versucht wird, eine Nachricht für den lokalen Abruf verfügbar zu halten, wenn und bevor die Anwendung mit Receive eine nachricht anfragt. Wenn Sie einen Wert ungleich 0 festlegen, wird prefetchCount die Anzahl von Nachrichten vorab abgerufen. Wenn Sie den Wert auf 0 (null) festlegen, wird der Vorabruf 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 derzeit registrierten Plug-Ins für diesen Client ab. (Geerbt von IClientEntity) |
ServiceBusConnection |
Verbindungsobjekt mit dem Service Bus-Namespace. (Geerbt von IClientEntity) |
Methoden
AbandonAsync(String, IDictionary<String,Object>) |
Gibt ein Message mithilfe eines Sperrtokens auf. Dadurch wird die Nachricht wieder zur Verarbeitung zur Verfügung gestellt. (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 von Message Verwendung einer Liste von Sperrtoken ab. Dadurch wird die Nachricht aus dem Dienst gelöscht. |
CompleteAsync(String) |
Schließt eine mithilfe des zugehörigen Sperrtokens ab Message . Dadurch wird die Nachricht aus der Warteschlange gelöscht. (Geerbt von IReceiverClient) |
DeadLetterAsync(String, IDictionary<String,Object>) |
Verschiebt eine Nachricht in die Unzustellbare Unterwarteschlange. (Geerbt von IReceiverClient) |
DeadLetterAsync(String, String, String) |
Verschiebt eine Nachricht in die Unzustellbare Unterwarteschlange. (Geerbt von IReceiverClient) |
DeferAsync(String, IDictionary<String,Object>) |
Gibt an, dass der Empfänger die Verarbeitung der Nachricht zurückstellen möchte. |
PeekAsync() |
Ruft die nächste aktive Nachricht ab, ohne den Status des Empfängers oder der Nachrichtenquelle zu ändern. |
PeekAsync(Int32) |
Ruft den nächsten Batch aktiver Nachrichten ab, ohne den Status des Empfängers oder der Nachrichtenquelle zu ändern. |
PeekBySequenceNumberAsync(Int64) |
Liest die nächste Nachricht asynchron, ohne den Status des Empfängers oder der Nachrichtenquelle zu ändern. |
PeekBySequenceNumberAsync(Int64, Int32) |
Hier wird ein Batch von Nachrichten eingesehen. |
ReceiveAsync() |
Empfangen einer Nachricht von der Entität, die mithilfe ReceiveMode des Modus definiert wirdPath. |
ReceiveAsync(Int32) |
Empfängt ein Maximum von Nachrichten von der Entität, die mithilfe ReceiveMode des |
ReceiveAsync(Int32, TimeSpan) |
Empfängt ein Maximum von Nachrichten von der Entität, die mithilfe ReceiveMode des |
ReceiveAsync(TimeSpan) |
Empfangen einer Nachricht von der Entität, die mithilfe ReceiveMode des Modus definiert wirdPath. |
ReceiveDeferredMessageAsync(IEnumerable<Int64>) |
Empfängt eine IList<T> von verzögerten Nachrichten, die durch identifiziert werden |
ReceiveDeferredMessageAsync(Int64) |
Empfängt eine bestimmte verzögerte Nachricht, die von identifiziert wird |
RegisterMessageHandler(Func<Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>) |
Empfangen von Nachrichten kontinuierlich von der Entität. Registriert einen Nachrichtenhandler und startet 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 von Nachrichten kontinuierlich von der Entität. Registriert einen Nachrichtenhandler und startet 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. |
RenewLockAsync(String) |
Erneuert die Sperre für die Nachricht. Die Sperre wird basierend auf der in der Warteschlange angegebenen Einstellung verlängert. Neues Sperrtokenablaufdatum und -uhrzeit im UTC-Format. |
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 Empfangsvorgä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:
Weitere Informationen
Azure SDK for .NET