Aracılığıyla paylaş


MessageQueue.ReceiveByLookupId Yöntem

Tanım

MSMQ 3.0'da kullanıma sunulmuştur. Kuyruktan belirli bir ileti alır. İleti bir arama tanımlayıcısı tarafından veya kuyruğun önündeki veya sonundaki konumuyla belirtilebilir.

Aşırı Yüklemeler

Name Description
ReceiveByLookupId(Int64)

MSMQ 3.0'da kullanıma sunulmuştur. İşlem dışı bir kuyruktan verilen arama tanımlayıcısı ile eşleşen iletiyi alır.

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction)

MSMQ 3.0'da kullanıma sunulmuştur. İşlem kuyruğundan belirli bir ileti alır. İleti bir arama tanımlayıcısı tarafından veya kuyruğun önündeki veya sonundaki konumuyla belirtilebilir.

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType)

MSMQ 3.0'da kullanıma sunulmuştur. Belirtilen işlem bağlamını kullanarak kuyruktan belirli bir ileti alır. İleti bir arama tanımlayıcısı tarafından veya kuyruğun önündeki veya sonundaki konumuyla belirtilebilir.

ReceiveByLookupId(Int64)

MSMQ 3.0'da kullanıma sunulmuştur. İşlem dışı bir kuyruktan verilen arama tanımlayıcısı ile eşleşen iletiyi alır.

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

Parametreler

lookupId
Int64

LookupId Alınacak iletinin.

Döndürülenler

özelliği MessageLookupId geçirilen parametreyle lookupId eşleşir.

Özel durumlar

MSMQ 3.0 yüklü değil.

Belirtilen lookupId ileti bulunamadı.

Message Queuing yöntemine erişilirken bir hata oluştu.

Açıklamalar

Bilinen arama tanımlayıcısına sahip bir iletiyi okumak ve kuyruktan kaldırmak için bu yöntemi kullanın. İleti kuyrukta değilse bu yöntem hemen bir özel durum oluşturur.

İletinin LookupId özelliği, iletinin bulunduğu kuyruğa özeldir, bu nedenle kuyrukta verilen lookupId parametreyle eşleşen en fazla bir ileti olur.

Belirtilen arama tanımlayıcısına sahip bir iletiyi kuyruktan kaldırmadan okumak için yöntemini kullanın PeekByLookupId .

Aşağıdaki tabloda, bu yöntemin çeşitli Çalışma Grubu modlarında kullanılabilir olup olmadığı gösterilmektedir.

Çalışma grubu modu Mevcut
Yerel bilgisayar Evet
Yerel bilgisayar ve doğrudan biçim adı Evet
Uzak bilgisayar Hayır
Uzak bilgisayar ve doğrudan biçim adı Evet

Ayrıca bkz.

Şunlara uygulanır

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction)

MSMQ 3.0'da kullanıma sunulmuştur. İşlem kuyruğundan belirli bir ileti alır. İleti bir arama tanımlayıcısı tarafından veya kuyruğun önündeki veya sonundaki konumuyla belirtilebilir.

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

Parametreler

action
MessageLookupAction

İletinin kuyrukta MessageLookupAction nasıl okunacağını belirten değerlerden biri. Aşağıdakilerden birini belirtin:

MessageLookupAction.Current: tarafından lookupId belirtilen iletiyi alır ve kuyruktan kaldırır.

MessageLookupAction.Next: tarafından lookupId belirtilen iletiyi izleyen iletiyi alır ve kuyruktan kaldırır.

MessageLookupAction.Previous: tarafından lookupId belirtilen iletiden önce gelen iletiyi alır ve kuyruktan kaldırır.

MessageLookupAction.First: Kuyruktaki ilk iletiyi alır ve kuyruktan kaldırır. lookupId parametresi 0 olarak ayarlanmalıdır.

MessageLookupAction.Last: Kuyruktaki son iletiyi alır ve kuyruktan kaldırır. lookupId parametresi 0 olarak ayarlanmalıdır.

lookupId
Int64

LookupId Alınacak iletinin veya 0'ın. 0, kuyruktaki ilk veya son iletiye erişirken kullanılır.

Döndürülenler

Message geçirilen ve action parametreleri tarafından lookupId belirtilen.

Özel durumlar

MSMQ 3.0 yüklü değil.

Belirtilen lookupId ileti bulunamadı.

Message Queuing yöntemine erişilirken bir hata oluştu.

-veya-

Kuyruk işlemsel değil.

action parametresi üyelerden MessageLookupAction biri değildir.

Açıklamalar

Parametresi tarafından transaction tanımlanan bir işlem bağlamını kullanarak bilinen arama tanımlayıcısına sahip bir iletiyi okumak ve kuyruktan kaldırmak için bu yöntemi kullanın. İleti kuyrukta değilse bu yöntem hemen bir özel durum oluşturur.

İletinin LookupId özelliği, iletinin bulunduğu kuyruğa özeldir, bu nedenle kuyrukta verilen lookupId parametreyle eşleşen en fazla bir ileti olur.

Bu yöntem bir işlem kuyruğunda çağrıldığından, işlem durdurulduysa alınan ileti kuyruğa döndürülür. İşlem işlenene kadar ileti kuyruktan kalıcı olarak kaldırılmaz.

Belirtilen tanımlayıcıya sahip bir iletiyi kuyruktan kaldırmadan okumak için yöntemini kullanın PeekByLookupId . çağrısı PeekByLookupIdtarafından döndürülen bir iletiyle ilişkilendirilmiş bir işlem bağlamı yoktur. PeekByLookupId Kuyruktan hiçbir ileti kaldırılmadığından, işlem durdurulduysa geri alınabilecek bir şey olmaz.

Aşağıdaki tabloda, bu yöntemin çeşitli Çalışma Grubu modlarında kullanılabilir olup olmadığı gösterilmektedir.

Çalışma grubu modu Mevcut
Yerel bilgisayar Evet
Yerel bilgisayar ve doğrudan biçim adı Evet
Uzak bilgisayar Hayır
Uzak bilgisayar ve doğrudan biçim adı Evet

Ayrıca bkz.

Şunlara uygulanır

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType)

MSMQ 3.0'da kullanıma sunulmuştur. Belirtilen işlem bağlamını kullanarak kuyruktan belirli bir ileti alır. İleti bir arama tanımlayıcısı tarafından veya kuyruğun önündeki veya sonundaki konumuyla belirtilebilir.

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

Parametreler

action
MessageLookupAction

İletinin kuyrukta MessageLookupAction nasıl okunacağını belirten değerlerden biri. Aşağıdakilerden birini belirtin:

MessageLookupAction.Current: tarafından lookupId belirtilen iletiyi alır ve kuyruktan kaldırır.

MessageLookupAction.Next: tarafından lookupId belirtilen iletiyi izleyen iletiyi alır ve kuyruktan kaldırır.

MessageLookupAction.Previous: tarafından lookupId belirtilen iletiden önce gelen iletiyi alır ve kuyruktan kaldırır.

MessageLookupAction.First: Kuyruktaki ilk iletiyi alır ve kuyruktan kaldırır. lookupId parametresi 0 olarak ayarlanmalıdır.

MessageLookupAction.Last: Kuyruktaki son iletiyi alır ve kuyruktan kaldırır. lookupId parametresi 0 olarak ayarlanmalıdır.

lookupId
Int64

LookupId Alınacak iletinin veya 0'ın. 0, kuyruktaki ilk veya son iletiye erişirken kullanılır.

transactionType
MessageQueueTransactionType

MessageQueueTransactionType İletiyle ilişkilendirilecek işlem bağlamının türünü açıklayan değerlerden biri.

Döndürülenler

Message geçirilen ve lookupId parametreleri tarafından action belirtilen.

Özel durumlar

MSMQ 3.0 yüklü değil.

Belirtilen lookupId ileti bulunamadı.

Message Queuing yöntemine erişilirken bir hata oluştu.

action parametresi üyelerden MessageLookupAction biri değildir.

-veya-

transactionType parametresi üyelerden MessageQueueTransactionType biri değildir.

Açıklamalar

Parametresi tarafından transactionType tanımlanan bir işlem bağlamını kullanarak bilinen arama tanımlayıcısına sahip bir iletiyi okumak ve kuyruktan kaldırmak için bu yöntemi kullanın. İleti kuyrukta değilse bu yöntem hemen bir özel durum oluşturur.

İletinin LookupId özelliği, iletinin bulunduğu kuyruğa özeldir, bu nedenle kuyrukta verilen lookupId parametreyle eşleşen en fazla bir ileti olur.

Belirtilen tanımlayıcıya sahip bir iletiyi kuyruktan kaldırmadan okumak için yöntemini kullanın PeekByLookupId . çağrısı PeekByLookupIdtarafından döndürülen bir iletiyle ilişkilendirilmiş bir işlem bağlamı yoktur. PeekByLookupId Kuyruktan hiçbir ileti kaldırılmadığından, işlem durdurulduysa geri alınabilecek bir şey olmaz.

İletiyi transactionType almak için kullanmak istediğiniz iş parçacığına eklenmiş bir dış işlem bağlamı varsa parametresini belirtinAutomatic. İletiyi tek bir iç işlem olarak almak isteyip istemediğinizi belirtin Single . İşlem bağlamı dışında bir işlem kuyruğundan ileti almak isteyip istemediğinizi belirtebilirsiniz None .

İşlem kuyruğundan ileti almak için bu yöntem çağrılırsa, işlem durdurulduysa alınan ileti kuyruğa döndürülür. İşlem işlenene kadar ileti kuyruktan kalıcı olarak kaldırılmaz.

Aşağıdaki tabloda, bu yöntemin çeşitli Çalışma Grubu modlarında kullanılabilir olup olmadığı gösterilmektedir.

Çalışma grubu modu Mevcut
Yerel bilgisayar Evet
Yerel bilgisayar ve doğrudan biçim adı Evet
Uzak bilgisayar Hayır
Uzak bilgisayar ve doğrudan biçim adı Evet

Ayrıca bkz.

Şunlara uygulanır