MessageQueue.ReceiveByLookupId メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
MSMQ 3.0 で導入されました。 特定のメッセージをキューから受信します。 メッセージは、参照識別子で指定することも、キューの前後の位置関係で指定することもできます。
オーバーロード
ReceiveByLookupId(Int64) |
MSMQ 3.0 で導入されました。 非トランザクション キュー内の指定した参照識別子に一致するメッセージを受信します。 |
ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction) |
MSMQ 3.0 で導入されました。 特定のメッセージをトランザクション キューから受信します。 メッセージは、参照識別子で指定することも、キューの前後の位置関係で指定することもできます。 |
ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType) |
MSMQ 3.0 で導入されました。 トランザクション コンテキストを指定して、特定のメッセージをキューから受信します。 メッセージは、参照識別子で指定することも、キューの前後の位置関係で指定することもできます。 |
ReceiveByLookupId(Int64)
MSMQ 3.0 で導入されました。 非トランザクション キュー内の指定した参照識別子に一致するメッセージを受信します。
public:
System::Messaging::Message ^ ReceiveByLookupId(long lookupId);
public System.Messaging.Message ReceiveByLookupId (long lookupId);
member this.ReceiveByLookupId : int64 -> System.Messaging.Message
Public Function ReceiveByLookupId (lookupId As Long) As Message
パラメーター
戻り値
渡された lookupId
パラメーターと一致する LookupId プロパティを持つ Message。
例外
MSMQ 3.0 がインストールされていません。
指定した lookupId
を持つメッセージは見つかりませんでした。
メッセージ キューのメソッドにアクセスしたときにエラーが発生しました。
注釈
既知の参照識別子を持つメッセージを読み取り、キューから削除するには、このメソッドを使用します。 メッセージがキューにない場合、このメソッドは例外を直ちにスローします。
メッセージの プロパティは LookupId 、メッセージが存在するキューに対して一意であるため、指定された lookupId
パラメーターと一致するメッセージがキュー内に最大 1 つ存在します。
指定した参照識別子を持つメッセージをキューから削除せずに読み取る場合は、 メソッドを PeekByLookupId 使用します。
次の表は、このメソッドがさまざまなワークグループ モードで使用できるかどうかを示しています。
ワークグループ モード | 利用可能 |
---|---|
ローカル コンピューター | はい |
ローカル コンピューターと直接の形式名 | はい |
リモート コンピューター | いいえ |
リモート コンピューターと直接形式の名前 | はい |
こちらもご覧ください
適用対象
ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction)
MSMQ 3.0 で導入されました。 特定のメッセージをトランザクション キューから受信します。 メッセージは、参照識別子で指定することも、キューの前後の位置関係で指定することもできます。
public:
System::Messaging::Message ^ ReceiveByLookupId(System::Messaging::MessageLookupAction action, long lookupId, System::Messaging::MessageQueueTransaction ^ transaction);
public System.Messaging.Message ReceiveByLookupId (System.Messaging.MessageLookupAction action, long lookupId, System.Messaging.MessageQueueTransaction transaction);
member this.ReceiveByLookupId : System.Messaging.MessageLookupAction * int64 * System.Messaging.MessageQueueTransaction -> System.Messaging.Message
Public Function ReceiveByLookupId (action As MessageLookupAction, lookupId As Long, transaction As MessageQueueTransaction) As Message
パラメーター
- action
- MessageLookupAction
キュー内のメッセージを読み取る方法を指定する MessageLookupAction のいずれか 1 つ。 次のいずれかを指定します。
MessageLookupAction.Current
。lookupId
で指定されたメッセージを受信し、キューから削除します。
MessageLookupAction.Next
。lookupId
で指定されたメッセージの次のメッセージを受信し、キューから削除します。
MessageLookupAction.Previous
。lookupId
で指定されたメッセージの前のメッセージを受信し、キューから削除します。
MessageLookupAction.First
: キューの最初のメッセージを受信し、キューから削除します。 lookupId
パラメーターは、0 に設定する必要があります。
MessageLookupAction.Last
: キューの最後のメッセージを受信し、キューから削除します。 lookupId
パラメーターは、0 に設定する必要があります。
- transaction
- MessageQueueTransaction
MessageQueueTransaction オブジェクト。
戻り値
渡された lookupId
パラメーターおよび action
パラメーターで指定された Message。
例外
MSMQ 3.0 がインストールされていません。
指定した lookupId
を持つメッセージは見つかりませんでした。
action
パラメーターが、MessageLookupAction メンバーの 1 つではありません。
注釈
このメソッドを使用して、既知の参照識別子を持つメッセージを読み取り、 パラメーターで定義された transaction
トランザクション コンテキストを使用してキューから削除します。 メッセージがキューにない場合、このメソッドは例外を直ちにスローします。
メッセージの プロパティは LookupId 、メッセージが存在するキューに対して一意であるため、指定された lookupId
パラメーターと一致するメッセージがキュー内に最大 1 つ存在します。
このメソッドはトランザクション キューで呼び出されるため、トランザクションが中止されると、受信したメッセージがキューに返されます。 トランザクションがコミットされるまで、メッセージはキューから完全に削除されません。
指定した識別子を持つメッセージをキューから削除せずに読み取る場合は、 メソッドを使用します PeekByLookupId 。 への PeekByLookupId呼び出しによって返されるメッセージに関連付けられたトランザクション コンテキストはありません。 はキューからメッセージを削除しないため PeekByLookupId 、トランザクションが中止された場合はロールバックする必要はありません。
次の表は、このメソッドがさまざまなワークグループ モードで使用できるかどうかを示しています。
ワークグループ モード | 利用可能 |
---|---|
ローカル コンピューター | はい |
ローカル コンピューターと直接の形式名 | はい |
リモート コンピューター | いいえ |
リモート コンピューターと直接形式の名前 | はい |
こちらもご覧ください
適用対象
ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType)
MSMQ 3.0 で導入されました。 トランザクション コンテキストを指定して、特定のメッセージをキューから受信します。 メッセージは、参照識別子で指定することも、キューの前後の位置関係で指定することもできます。
public:
System::Messaging::Message ^ ReceiveByLookupId(System::Messaging::MessageLookupAction action, long lookupId, System::Messaging::MessageQueueTransactionType transactionType);
public System.Messaging.Message ReceiveByLookupId (System.Messaging.MessageLookupAction action, long lookupId, System.Messaging.MessageQueueTransactionType transactionType);
member this.ReceiveByLookupId : System.Messaging.MessageLookupAction * int64 * System.Messaging.MessageQueueTransactionType -> System.Messaging.Message
Public Function ReceiveByLookupId (action As MessageLookupAction, lookupId As Long, transactionType As MessageQueueTransactionType) As Message
パラメーター
- action
- MessageLookupAction
キュー内のメッセージを読み取る方法を指定する MessageLookupAction のいずれか 1 つ。 次のいずれかを指定します。
MessageLookupAction.Current
。lookupId
で指定されたメッセージを受信し、キューから削除します。
MessageLookupAction.Next
。lookupId
で指定されたメッセージの次のメッセージを受信し、キューから削除します。
MessageLookupAction.Previous
。lookupId
で指定されたメッセージの前のメッセージを受信し、キューから削除します。
MessageLookupAction.First
: キューの最初のメッセージを受信し、キューから削除します。 lookupId
パラメーターは、0 に設定する必要があります。
MessageLookupAction.Last
: キューの最後のメッセージを受信し、キューから削除します。 lookupId
パラメーターは、0 に設定する必要があります。
- transactionType
- MessageQueueTransactionType
メッセージと関連付けるトランザクション コンテキストの種類を示す、MessageQueueTransactionType 値の 1 つ。
戻り値
渡された action
パラメーターおよび lookupId
パラメーターで指定された Message。
例外
MSMQ 3.0 がインストールされていません。
指定した lookupId
を持つメッセージは見つかりませんでした。
メッセージ キューのメソッドにアクセスしたときにエラーが発生しました。
action
パラメーターが、MessageLookupAction メンバーの 1 つではありません。
- または -
transactionType
パラメーターが、MessageQueueTransactionType メンバーの 1 つではありません。
注釈
パラメーターで定義されたトランザクション コンテキストを使用して、既知の参照識別子を持つメッセージを読み取り、キューから削除するには、このメソッドを transactionType
使用します。 メッセージがキューにない場合、このメソッドは例外を直ちにスローします。
メッセージの プロパティは LookupId 、メッセージが存在するキューに一意であるため、指定 lookupId
されたパラメーターと一致するメッセージがキュー内に最大 1 つ存在します。
指定した識別子を持つメッセージをキューから削除せずに読み取る場合は、 メソッドを PeekByLookupId 使用します。 への PeekByLookupId呼び出しによって返されるメッセージに関連付けられたトランザクション コンテキストはありません。 はキューからメッセージを削除しないため PeekByLookupId 、トランザクションが中止された場合はロールバックする必要はありません。
メッセージの受信に使用するtransactionType
スレッドに外部トランザクション コンテキストが既にアタッチされている場合は、 パラメーターに を指定Automatic
します。 メッセージを 1 つの内部トランザクションとして受信するかどうかを指定 Single
します。 トランザクション コンテキストの外部のトランザクション キューからメッセージを受信するかどうかを指定 None
できます。
トランザクション キューからメッセージを受信するためにこのメソッドが呼び出された場合、トランザクションが中止されると、受信したメッセージがキューに返されます。 トランザクションがコミットされるまで、メッセージはキューから完全に削除されません。
次の表は、このメソッドがさまざまなワークグループ モードで使用できるかどうかを示しています。
ワークグループ モード | 利用可能 |
---|---|
ローカル コンピューター | はい |
ローカル コンピューターと直接形式の名前 | はい |
リモート コンピューター | いいえ |
リモート コンピューターと直接形式の名前 | はい |
こちらもご覧ください
適用対象
.NET