QueueClient クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
QueueClient は、Service Bus キューとのすべての基本的な操作に使用できます。
public class QueueClient : Microsoft.Azure.ServiceBus.ClientEntity, Microsoft.Azure.ServiceBus.IQueueClient
type QueueClient = class
inherit ClientEntity
interface IQueueClient
interface IReceiverClient
interface IClientEntity
interface ISenderClient
Public Class QueueClient
Inherits ClientEntity
Implements IQueueClient
- 継承
- 実装
例
新しい QueueClient を作成する
IQueueClient queueClient = new QueueClient(
namespaceConnectionString,
queueName,
ReceiveMode.PeekLock,
RetryExponential);
キューにメッセージを送信します。
byte[] data = GetData();
await queueClient.SendAsync(data);
メッセージを受信するたびに呼び出されるメッセージ ハンドラーを登録します。
queueClient.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 queueClient is opened in ReceiveMode.PeekLock mode.
await queueClient.CompleteAsync(message.SystemProperties.LockToken);
},
async (exceptionEvent) =>
{
// Process the exception
Console.WriteLine("Exception = " + exceptionEvent.Exception);
return Task.CompletedTask;
});
注釈
または MessageReceiver を高度な機能セットに使用MessageSenderします。 サービスバスとの通信には AMQP プロトコルが使用されます。
コンストラクター
QueueClient(ServiceBusConnection, String, ReceiveMode, RetryPolicy) |
特定の に Queue クライアントの新しいインスタンスを作成します。 ServiceBusConnection |
QueueClient(ServiceBusConnectionStringBuilder, ReceiveMode, RetryPolicy) |
キューに対する操作を実行する新しい QueueClient をインスタンス化します。 |
QueueClient(String, String, ITokenProvider, TransportType, ReceiveMode, RetryPolicy) |
指定したエンドポイント、エンティティ パス、トークン プロバイダーを使用して、Queue クライアントの新しいインスタンスを作成します。 |
QueueClient(String, String, ReceiveMode, RetryPolicy) |
キューに対する操作を実行する新しい QueueClient をインスタンス化します。 |
プロパティ
ClientId |
このクライアントを識別する ID を取得します。 これは、ログと例外を関連付けるために使用できます。 (継承元 ClientEntity) |
IsClosedOrClosing |
クライアントが閉じているか閉じている場合は true を返します。 (継承元 ClientEntity) |
OperationTimeout |
個々の操作がタイムアウトする期間。 |
OwnsConnection |
接続が所有されている場合は true、接続が共有されている場合は false を返します。 (継承元 ClientEntity) |
Path |
キューの名前を取得します。 |
PrefetchCount |
プリフェッチは、アプリケーションが Receive を使用してメッセージを要求する前に、ローカル取得のためにメッセージをすぐに使用できるようにすることで、メッセージ フローを高速化します。 0 以外の値を設定すると、メッセージのプリフェッチ数がプリフェッチされます。 値を 0 に設定すると、プリフェッチがオフになります。 既定値は 0 です。 |
QueueName |
キューの名前を取得します。 |
ReceiveMode |
QueueClient の を ReceiveMode 取得します。 |
RegisteredPlugins |
この QueueClient の現在登録されているプラグインの一覧を取得します。 |
RetryPolicy |
クライアントで定義されている RetryPolicy を取得します。 (継承元 ClientEntity) |
ServiceBusConnection |
Service Bus 名前空間への接続オブジェクト。 |
メソッド
AbandonAsync(String, IDictionary<String,Object>) |
ロック トークンを使用して を Message 破棄します。 これにより、メッセージを再び処理できるようになります。 |
CancelScheduledMessageAsync(Int64) |
スケジュールされたメッセージを取り消します。 |
CloseAsync() |
クライアントを閉じます。 その接続によって開かれた接続を閉じます。 (継承元 ClientEntity) |
CompleteAsync(String) |
ロック トークンを使用して を Message 完了します。 これにより、キューからメッセージが削除されます。 |
DeadLetterAsync(String, IDictionary<String,Object>) |
メッセージを配信不能サブキューに移動します。 |
DeadLetterAsync(String, String, String) |
メッセージを配信不能サブキューに移動します。 |
OnClosingAsync() |
QueueClient は、Service Bus キューとのすべての基本的な操作に使用できます。 |
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このキュー クライアントで使用する を登録します。 |
RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, Func<ExceptionReceivedEventArgs,Task>) |
キューからセッション メッセージを継続的に受信します。 メッセージ ハンドラーを登録し、セッション メッセージを受信する新しいスレッドを開始します。 この handler(Func<T1,T2,T3,TResult>) は、キュー クライアントによって新しいメッセージが受信されるたびに待機されます。 |
RegisterSessionHandler(Func<IMessageSession,Message,CancellationToken,Task>, SessionHandlerOptions) |
キューからセッション メッセージを継続的に受信します。 メッセージ ハンドラーを登録し、セッション メッセージを受信する新しいスレッドを開始します。 この handler(Func<T1,T2,T3,TResult>) は、キュー クライアントによって新しいメッセージが受信されるたびに待機されます。 |
ScheduleMessageAsync(Message, DateTimeOffset) |
後で Service Bus にメッセージを表示するようにスケジュールします。 |
SendAsync(IList<Message>) |
メッセージの一覧を Service Bus に送信します。 パーティション分割されたエンティティで呼び出されると、異なるパーティション用のメッセージを一緒にバッチ処理することはできません。 |
SendAsync(Message) |
Service Bus にメッセージを送信します。 |
ThrowIfClosed() |
オブジェクトが Closing の場合は、OperationCanceledException をスローします。 (継承元 ClientEntity) |
UnregisterMessageHandlerAsync(TimeSpan) |
アクティブなメッセージ ハンドラーが登録されている場合は、受信側からメッセージ ハンドラーの登録を解除します。 この操作は、未完了の受信操作とメッセージ処理操作の完了を待機し、以前に登録したメッセージ ハンドラーで将来の受信を登録解除します。 |
UnregisterPlugin(String) |
の登録を ServiceBusPlugin解除します。 |
UnregisterSessionHandlerAsync(TimeSpan) |
アクティブなセッション ハンドラーが登録されている場合は、レシーバーからセッション ハンドラーの登録を解除します。 この操作は、未完了の受信操作とセッション処理操作の完了を待機し、以前に登録したセッション ハンドラーで将来の受信を登録解除します。 |
適用対象
Azure SDK for .NET