Partager via


MessageQueue.ReceiveByLookupId Méthode

Définition

Introduit dans MSMQ 3.0. Reçoit un message spécifique de la file d’attente. Le message peut être spécifié par un identificateur de recherche ou par sa position à l’avant ou à la fin de la file d’attente.

Surcharges

Nom Description
ReceiveByLookupId(Int64)

Introduit dans MSMQ 3.0. Reçoit le message qui correspond à l’identificateur de recherche donné à partir d’une file d’attente non transactionnelle.

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction)

Introduit dans MSMQ 3.0. Reçoit un message spécifique d’une file d’attente transactionnelle. Le message peut être spécifié par un identificateur de recherche ou par sa position à l’avant ou à la fin de la file d’attente.

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType)

Introduit dans MSMQ 3.0. Reçoit un message spécifique de la file d’attente à l’aide du contexte de transaction spécifié. Le message peut être spécifié par un identificateur de recherche ou par sa position à l’avant ou à la fin de la file d’attente.

ReceiveByLookupId(Int64)

Introduit dans MSMQ 3.0. Reçoit le message qui correspond à l’identificateur de recherche donné à partir d’une file d’attente non transactionnelle.

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

Paramètres

lookupId
Int64

Message LookupId à recevoir.

Retours

Dont Message la propriété correspond au lookupId paramètre LookupId passé.

Exceptions

MSMQ 3.0 n’est pas installé.

Impossible de trouver le message avec le message spécifié lookupId .

Une erreur s’est produite lors de l’accès à une méthode Message Queuing.

Remarques

Utilisez cette méthode pour lire un message avec un identificateur de recherche connu et le supprimer de la file d’attente. Cette méthode lève immédiatement une exception si le message n’est pas dans la file d’attente.

La LookupId propriété d’un message est unique à la file d’attente où réside le message. Il y aura donc au maximum un message dans la file d’attente qui correspond au paramètre donné lookupId .

Pour lire un message avec un identificateur de recherche spécifié sans le supprimer de la file d’attente, utilisez la PeekByLookupId méthode.

Le tableau suivant indique si cette méthode est disponible dans différents modes de groupe de travail.

Mode groupe de travail Disponible
Ordinateur local Oui
Ordinateur local et nom de format direct Oui
Ordinateur distant Non
Ordinateur distant et nom de format direct Oui

Voir aussi

S’applique à

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransaction)

Introduit dans MSMQ 3.0. Reçoit un message spécifique d’une file d’attente transactionnelle. Le message peut être spécifié par un identificateur de recherche ou par sa position à l’avant ou à la fin de la file d’attente.

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

Paramètres

action
MessageLookupAction

Une des MessageLookupAction valeurs, en spécifiant la façon dont le message est lu dans la file d’attente. Spécifiez l'une des valeurs suivantes :

MessageLookupAction.Current: reçoit le message spécifié lookupId et le supprime de la file d’attente.

MessageLookupAction.Next: reçoit le message suivant le message spécifié lookupId et le supprime de la file d’attente.

MessageLookupAction.Previous: reçoit le message qui précède le message spécifié lookupId et le supprime de la file d’attente.

MessageLookupAction.First: reçoit le premier message de la file d’attente et le supprime de la file d’attente. Le lookupId paramètre doit être défini sur 0.

MessageLookupAction.Last: reçoit le dernier message de la file d’attente et le supprime de la file d’attente. Le lookupId paramètre doit être défini sur 0.

lookupId
Int64

Message LookupId à recevoir, ou 0. 0 est utilisé lors de l’accès au premier ou dernier message dans la file d’attente.

Retours

Message Spécifié par les lookupId paramètres et action transmis.

Exceptions

MSMQ 3.0 n’est pas installé.

Impossible de trouver le message avec le message spécifié lookupId .

Une erreur s’est produite lors de l’accès à une méthode Message Queuing.

- ou -

La file d’attente n’est pas transactionnelle.

Le action paramètre n’est pas l’un des MessageLookupAction membres.

Remarques

Utilisez cette méthode pour lire un message avec un identificateur de recherche connu et le supprimer de la file d’attente à l’aide d’un contexte de transaction défini par le transaction paramètre. Cette méthode lève immédiatement une exception si le message n’est pas dans la file d’attente.

La LookupId propriété d’un message est unique à la file d’attente où réside le message. Il y aura donc au maximum un message dans la file d’attente qui correspond au paramètre donné lookupId .

Étant donné que cette méthode est appelée sur une file d’attente transactionnelle, le message reçu est retourné à la file d’attente si la transaction est abandonnée. Le message n’est pas supprimé définitivement de la file d’attente tant que la transaction n’est pas validée.

Pour lire un message avec un identificateur spécifié sans le supprimer de la file d’attente, utilisez la PeekByLookupId méthode. Aucun contexte de transaction n’est associé à un message retourné par un appel à PeekByLookupId. Étant donné que PeekByLookupId ne supprime aucun message de la file d’attente, il n’y aurait rien à restaurer si la transaction a été abandonnée.

Le tableau suivant indique si cette méthode est disponible dans différents modes de groupe de travail.

Mode groupe de travail Disponible
Ordinateur local Oui
Ordinateur local et nom de format direct Oui
Ordinateur distant Non
Ordinateur distant et nom de format direct Oui

Voir aussi

S’applique à

ReceiveByLookupId(MessageLookupAction, Int64, MessageQueueTransactionType)

Introduit dans MSMQ 3.0. Reçoit un message spécifique de la file d’attente à l’aide du contexte de transaction spécifié. Le message peut être spécifié par un identificateur de recherche ou par sa position à l’avant ou à la fin de la file d’attente.

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

Paramètres

action
MessageLookupAction

Une des MessageLookupAction valeurs, en spécifiant la façon dont le message est lu dans la file d’attente. Spécifiez l'une des valeurs suivantes :

MessageLookupAction.Current: reçoit le message spécifié lookupId et le supprime de la file d’attente.

MessageLookupAction.Next: reçoit le message suivant le message spécifié lookupId et le supprime de la file d’attente.

MessageLookupAction.Previous: reçoit le message qui précède le message spécifié lookupId et le supprime de la file d’attente.

MessageLookupAction.First: reçoit le premier message de la file d’attente et le supprime de la file d’attente. Le lookupId paramètre doit être défini sur 0.

MessageLookupAction.Last: reçoit le dernier message de la file d’attente et le supprime de la file d’attente. Le lookupId paramètre doit être défini sur 0.

lookupId
Int64

Message LookupId à recevoir, ou 0. 0 est utilisé lors de l’accès au premier ou dernier message dans la file d’attente.

transactionType
MessageQueueTransactionType

Une des MessageQueueTransactionType valeurs, décrivant le type de contexte de transaction à associer au message.

Retours

Message Spécifié par les action paramètres et lookupId transmis.

Exceptions

MSMQ 3.0 n’est pas installé.

Impossible de trouver le message avec le message spécifié lookupId .

Une erreur s’est produite lors de l’accès à une méthode Message Queuing.

Le action paramètre n’est pas l’un des MessageLookupAction membres.

- ou -

Le transactionType paramètre n’est pas l’un des MessageQueueTransactionType membres.

Remarques

Utilisez cette méthode pour lire un message avec un identificateur de recherche connu et le supprimer de la file d’attente à l’aide d’un contexte de transaction défini par le transactionType paramètre. Cette méthode lève immédiatement une exception si le message n’est pas dans la file d’attente.

La LookupId propriété d’un message est unique à la file d’attente où réside le message. Il y aura donc au maximum un message dans la file d’attente qui correspond au paramètre donné lookupId .

Pour lire un message avec un identificateur spécifié sans le supprimer de la file d’attente, utilisez la PeekByLookupId méthode. Aucun contexte de transaction n’est associé à un message retourné par un appel à PeekByLookupId. Étant donné que PeekByLookupId ne supprime aucun message de la file d’attente, il n’y aurait rien à restaurer si la transaction a été abandonnée.

Spécifiez Automatic le transactionType paramètre s’il existe déjà un contexte de transaction externe attaché au thread que vous souhaitez utiliser pour recevoir le message. Spécifiez si vous souhaitez Single recevoir le message en tant que transaction interne unique. Vous pouvez spécifier None si vous souhaitez recevoir un message d’une file d’attente transactionnelle en dehors d’un contexte de transaction.

Si cette méthode est appelée pour recevoir un message d’une file d’attente transactionnelle, le message reçu est retourné à la file d’attente si la transaction est abandonnée. Le message n’est pas supprimé définitivement de la file d’attente tant que la transaction n’est pas validée.

Le tableau suivant indique si cette méthode est disponible dans différents modes de groupe de travail.

Mode groupe de travail Disponible
Ordinateur local Oui
Ordinateur local et nom de format direct Oui
Ordinateur distant Non
Ordinateur distant et nom de format direct Oui

Voir aussi

S’applique à