MessageReceiver クラス

定義

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

public class MessageReceiver : Microsoft.Azure.ServiceBus.ClientEntity, Microsoft.Azure.ServiceBus.Core.IMessageReceiver
type MessageReceiver = class
    inherit ClientEntity
    interface IMessageReceiver
    interface IReceiverClient
    interface IClientEntity
Public Class MessageReceiver
Inherits ClientEntity
Implements IMessageReceiver
継承
MessageReceiver
実装

サブスクリプションからメッセージを受信する新しい MessageReceiver を作成する

IMessageReceiver messageReceiver = new MessageReceiver(
    namespaceConnectionString,
    EntityNameHelper.FormatSubscriptionPath(topicName, subscriptionName),
    ReceiveMode.PeekLock);

サブスクリプションからメッセージを受信します。

var message = await messageReceiver.ReceiveAsync();
await messageReceiver.CompleteAsync(message.SystemProperties.LockToken);

注釈

MessageReceiver には、 または SubscriptionClientQueueClientはない高度な機能が用意されています。 たとえば、 ReceiveAsync()では、必要に応じてメッセージを受信できますが、 を使用して RenewLockAsync(Message)ロックを手動で更新する必要もあります。 AMQP プロトコルを使用してサービスと通信します。

コンストラクター

MessageReceiver(ServiceBusConnection, String, ReceiveMode, RetryPolicy, Int32)

指定された に新しい AMQP MessageReceiver を作成します。 ServiceBusConnection

MessageReceiver(ServiceBusConnectionStringBuilder, ReceiveMode, RetryPolicy, Int32)

から新しい MessageReceiver を ServiceBusConnectionStringBuilder作成します。

MessageReceiver(String, String, ITokenProvider, TransportType, ReceiveMode, RetryPolicy, Int32)

指定したエンドポイント、エンティティ パス、トークン プロバイダーから新しい MessageReceiver を作成します。

MessageReceiver(String, String, ReceiveMode, RetryPolicy, Int32)

指定した接続文字列とエンティティ パスから新しい MessageReceiver を作成します。

プロパティ

ClientId

このクライアントを識別する ID を取得します。 これは、ログと例外を関連付けるために使用できます。

(継承元 ClientEntity)
IsClosedOrClosing

クライアントが閉じているか閉じている場合は true を返します。

(継承元 ClientEntity)
LastPeekedSequenceNumber

最後にピークされたメッセージのシーケンス番号を取得します。

OperationTimeout

個々の操作がタイムアウトするまでの期間。

OwnsConnection

接続が所有されている場合は true、接続が共有されている場合は false を返します。

(継承元 ClientEntity)
Path

このレシーバーのエンティティのパス。 キューの場合、これは名前になりますが、サブスクリプションの場合はパスになります。

PrefetchCount

プリフェッチは、アプリケーションが Receive を使用してメッセージを要求する前に、ローカルの取得にメッセージをすぐに使用できるようにすることで、メッセージ フローを高速化します。 0 以外の値を設定すると、メッセージ数が PrefetchCount にプリフェッチされます。 値を 0 に設定すると、プリフェッチがオフになります。 既定値は 0 です。

ReceiveMode

現在のレシーバーの を ReceiveMode 取得します。

RegisteredPlugins

現在登録されているプラグインの一覧を取得します。

RetryPolicy

クライアントで定義されている RetryPolicy を取得します。

(継承元 ClientEntity)
ServiceBusConnection

Service Bus 名前空間への接続オブジェクト。

メソッド

AbandonAsync(String, IDictionary<String,Object>)

ロック トークンを使用して を Message 破棄します。 これにより、メッセージを再び処理できるようになります。

CloseAsync()

クライアントを閉じます。 によって開かれた接続を閉じます。

(継承元 ClientEntity)
CompleteAsync(IEnumerable<String>)

一連のロック トークンの Message 一覧を使用して完了します。 これにより、サービスからメッセージが削除されます。

CompleteAsync(String)

ロック トークンを使用して を Message 完了します。 これにより、サービスからメッセージが削除されます。

DeadLetterAsync(String, IDictionary<String,Object>)

メッセージを配信不能サブキューに移動します。

DeadLetterAsync(String, String, String)

メッセージを配信不能サブキューに移動します。

DeferAsync(String, IDictionary<String,Object>)

受信側がメッセージの処理を延期することを示します。

OnAbandonAsync(String, IDictionary<String,Object>)

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

OnClosingAsync()

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

OnCompleteAsync(IEnumerable<String>)

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

OnDeadLetterAsync(String, IDictionary<String,Object>, String, String)

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

OnDeferAsync(String, IDictionary<String,Object>)

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

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

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

OnPeekAsync(Int64, Int32)

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

OnReceiveAsync(Int32, TimeSpan)

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

OnReceiveDeferredMessageAsync(Int64[])

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

OnRenewLockAsync(String)

MessageReceiver を使用して、キューとサブスクリプションからメッセージを受信し、それらを確認できます。

PeekAsync()

受信側またはメッセージ ソースの状態を変更せずに、次のアクティブなメッセージをフェッチします。

PeekAsync(Int32)

受信側またはメッセージ ソースの状態を変更せずに、アクティブなメッセージの次のバッチをフェッチします。

PeekBySequenceNumberAsync(Int64)

受信側またはメッセージ ソースの状態を変更せずに、次のメッセージを非同期的に読み取ります。

PeekBySequenceNumberAsync(Int64, Int32)

メッセージのバッチをピークします。

ReceiveAsync()

mode を使用して定義されたエンティティからメッセージをPathReceiveMode受信します。

ReceiveAsync(Int32)

モードを使用して定義されたエンティティから最大のmaxMessageCountメッセージをReceiveModePath受信します。

ReceiveAsync(Int32, TimeSpan)

モードを使用して定義されたエンティティから最大のmaxMessageCountメッセージをReceiveModePath受信します。

ReceiveAsync(TimeSpan)

mode を使用して定義されたエンティティからメッセージをPathReceiveMode受信します。

ReceiveDeferredMessageAsync(IEnumerable<Int64>)

IList<T>によってsequenceNumbers識別される遅延メッセージの を受信します。

ReceiveDeferredMessageAsync(Int64)

によって sequenceNumber識別される特定の遅延メッセージを受信します。

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

エンティティからメッセージを継続的に受信します。 メッセージ ハンドラーを登録し、メッセージを受信する新しいスレッドを開始します。 このハンドラー(Func<T1,T2,TResult>) は、受信者が新しいメッセージを受信するたびに待機されます。

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

エンティティからメッセージを継続的に受信します。 メッセージ ハンドラーを登録し、メッセージを受信する新しいスレッドを開始します。 このハンドラー(Func<T1,T2,TResult>) は、受信者が新しいメッセージを受信するたびに待機されます。

RegisterPlugin(ServiceBusPlugin)

ServiceBusPluginこのレシーバーで使用する を登録します。

RenewLockAsync(Message)

ロック トークンで指定されたメッセージのロックを更新します。 ロックは、キューで指定された設定に基づいて更新されます。

RenewLockAsync(String)

メッセージのロックを更新します。 ロックは、キューで指定された設定に基づいて更新されます。 UTC 形式の新しいロック トークンの有効期限の日付と時刻。

ThrowIfClosed()

オブジェクトが Closing の場合は、OperationCanceledException をスローします。

(継承元 ClientEntity)
UnregisterMessageHandlerAsync(TimeSpan)

アクティブなメッセージ ハンドラーが登録されている場合は、受信側からメッセージ ハンドラーの登録を解除します。 この操作は、インフライト受信操作とメッセージ処理操作の完了を待機し、以前に登録したメッセージ ハンドラーで将来の受信を登録解除します。

UnregisterPlugin(String)

の登録を解除します ServiceBusPlugin

適用対象