MessageEnumerator.RemoveCurrent Metoda

Definice

Odebere aktuální zprávu z fronty a vrátí zprávu do volající aplikace. Odebráním zprávy ji odstraníte z fronty.

Přetížení

RemoveCurrent()

Odebere aktuální zprávu z transakční nebo neaktuální fronty a vrátí zprávu volající aplikaci. Pro doručení zprávy do fronty není zadán žádný časový limit.

RemoveCurrent(MessageQueueTransaction)

Odebere aktuální zprávu z transakční fronty a vrátí zprávu do volající aplikace. Pro doručení zprávy do fronty není zadán žádný časový limit.

RemoveCurrent(MessageQueueTransactionType)

Odebere aktuální zprávu z fronty a vrátí zprávu volající aplikaci. Pro doručení zprávy do fronty není zadán žádný časový limit.

RemoveCurrent(TimeSpan)

Odebere aktuální zprávu z fronty a vrátí zprávu do volající aplikace. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.

RemoveCurrent(TimeSpan, MessageQueueTransaction)

Odebere aktuální zprávu z transakční fronty a vrátí zprávu do volající aplikace. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.

RemoveCurrent(TimeSpan, MessageQueueTransactionType)

Odebere aktuální zprávu z fronty a vrátí zprávu volající aplikaci. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.

Poznámky

Chování popsané pro tato přetížení je použitelné pouze v případě, že MessageEnumerator instance je načtena pomocí GetMessageEnumerator2. Nepoužívejte GetMessageEnumerator k načtení instance MessageEnumerator, protože tato metoda je zastaralá.

RemoveCurrent()

Odebere aktuální zprávu z transakční nebo neaktuální fronty a vrátí zprávu volající aplikaci. Pro doručení zprávy do fronty není zadán žádný časový limit.

public:
 System::Messaging::Message ^ RemoveCurrent();
public System.Messaging.Message RemoveCurrent ();
member this.RemoveCurrent : unit -> System.Messaging.Message
Public Function RemoveCurrent () As Message

Návraty

Message, která odkazuje na první zprávu dostupnou ve frontě.

Poznámky

RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru.

Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.

Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .

Pokud toto přetížení zavoláte v transakční frontě, služba Řízení front zpráv vytvoří jednu interní transakci.

Viz také

Platí pro

RemoveCurrent(MessageQueueTransaction)

Odebere aktuální zprávu z transakční fronty a vrátí zprávu do volající aplikace. Pro doručení zprávy do fronty není zadán žádný časový limit.

public:
 System::Messaging::Message ^ RemoveCurrent(System::Messaging::MessageQueueTransaction ^ transaction);
public System.Messaging.Message RemoveCurrent (System.Messaging.MessageQueueTransaction transaction);
member this.RemoveCurrent : System.Messaging.MessageQueueTransaction -> System.Messaging.Message
Public Function RemoveCurrent (transaction As MessageQueueTransaction) As Message

Parametry

transaction
MessageQueueTransaction

Objekt MessageQueueTransaction, který určuje transakci, ve které bude zpráva odebrána.

Návraty

Message, která odkazuje na první zprávu dostupnou ve frontě.

Výjimky

Parametr transaction je null.

Poznámky

RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru pomocí interního kontextu transakce definovaného parametrem transaction.

Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.

Když pracujete s transakčními frontami, vrácení transakce zpět způsobí, že všechny zprávy odebrané voláním RemoveCurrent se vrátí do fronty. Odebrání není nevratné, dokud transakce nebude potvrzena.

Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .

Viz také

Platí pro

RemoveCurrent(MessageQueueTransactionType)

Odebere aktuální zprávu z fronty a vrátí zprávu volající aplikaci. Pro doručení zprávy do fronty není zadán žádný časový limit.

public:
 System::Messaging::Message ^ RemoveCurrent(System::Messaging::MessageQueueTransactionType transactionType);
public System.Messaging.Message RemoveCurrent (System.Messaging.MessageQueueTransactionType transactionType);
member this.RemoveCurrent : System.Messaging.MessageQueueTransactionType -> System.Messaging.Message
Public Function RemoveCurrent (transactionType As MessageQueueTransactionType) As Message

Parametry

transactionType
MessageQueueTransactionType

Jedna z MessageQueueTransactionType hodnot popisující typ kontextu transakce, který chcete přidružit ke zprávě.

Návraty

Message, která odkazuje na první zprávu dostupnou ve frontě.

Výjimky

Parametr transactionType není jedním ze členů MessageQueueTransactionType.

Poznámky

RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru pomocí kontextu transakce definovaného parametrem transactionType.

Zadejte Automatic pro parametr transactionType, pokud již existuje kontext externí transakce připojený k vláknu, které chcete použít k přijetí zprávy. Zadejte Single, pokud chcete zprávu přijmout jako jednu interní transakci. Můžete zadat None, pokud chcete přijmout zprávu z transakční fronty mimo kontext transakce.

Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.

Když pracujete s transakčními frontami, vrácení transakce zpět způsobí, že všechny zprávy odebrané voláním RemoveCurrent se vrátí do fronty. Odebrání není nevratné, dokud transakce nebude potvrzena.

Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .

Viz také

Platí pro

RemoveCurrent(TimeSpan)

Odebere aktuální zprávu z fronty a vrátí zprávu do volající aplikace. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.

public:
 System::Messaging::Message ^ RemoveCurrent(TimeSpan timeout);
public System.Messaging.Message RemoveCurrent (TimeSpan timeout);
member this.RemoveCurrent : TimeSpan -> System.Messaging.Message
Public Function RemoveCurrent (timeout As TimeSpan) As Message

Parametry

timeout
TimeSpan

Interval čekání na doručení zprávy do fronty.

Návraty

Message, která odkazuje na první zprávu dostupnou ve frontě.

Výjimky

Hodnota zadaná pro parametr timeout je neplatná.

Vypršel časový limit.

Poznámky

RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru. Pokud je kurzor na konci fronty, toto přetížení metody čeká na dostupnost zprávy nebo interval určený parametrem timeout vypršela.

Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.

Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .

Pokud toto přetížení zavoláte v transakční frontě, služba Řízení front zpráv vytvoří jednu interní transakci.

Viz také

Platí pro

RemoveCurrent(TimeSpan, MessageQueueTransaction)

Odebere aktuální zprávu z transakční fronty a vrátí zprávu do volající aplikace. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.

public:
 System::Messaging::Message ^ RemoveCurrent(TimeSpan timeout, System::Messaging::MessageQueueTransaction ^ transaction);
public System.Messaging.Message RemoveCurrent (TimeSpan timeout, System.Messaging.MessageQueueTransaction transaction);
member this.RemoveCurrent : TimeSpan * System.Messaging.MessageQueueTransaction -> System.Messaging.Message
Public Function RemoveCurrent (timeout As TimeSpan, transaction As MessageQueueTransaction) As Message

Parametry

timeout
TimeSpan

Interval čekání na odebrání zprávy.

transaction
MessageQueueTransaction

Objekt MessageQueueTransaction, který určuje kontext transakce zprávy.

Návraty

Message, která odkazuje na první zprávu dostupnou ve frontě.

Výjimky

Hodnota zadaná pro parametr timeout je neplatná.

Parametr transaction je null.

Vypršel časový limit.

Poznámky

RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru. Pokud je kurzor na konci fronty, toto přetížení metody čeká na dostupnost zprávy nebo interval určený parametrem timeout vypršela.

Když pracujete s transakčními frontami, vrácení transakce zpět způsobí, že všechny zprávy odebrané voláním RemoveCurrent se vrátí do fronty. Odebrání není nevratné, dokud transakce nebude potvrzena.

Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.

Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .

Viz také

Platí pro

RemoveCurrent(TimeSpan, MessageQueueTransactionType)

Odebere aktuální zprávu z fronty a vrátí zprávu volající aplikaci. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.

public:
 System::Messaging::Message ^ RemoveCurrent(TimeSpan timeout, System::Messaging::MessageQueueTransactionType transactionType);
public System.Messaging.Message RemoveCurrent (TimeSpan timeout, System.Messaging.MessageQueueTransactionType transactionType);
member this.RemoveCurrent : TimeSpan * System.Messaging.MessageQueueTransactionType -> System.Messaging.Message
Public Function RemoveCurrent (timeout As TimeSpan, transactionType As MessageQueueTransactionType) As Message

Parametry

timeout
TimeSpan

Interval čekání na odebrání zprávy.

transactionType
MessageQueueTransactionType

Jedna z MessageQueueTransactionType hodnot popisující typ kontextu transakce, který chcete přidružit ke zprávě.

Návraty

Message, která odkazuje na první zprávu dostupnou ve frontě.

Výjimky

Hodnota zadaná pro parametr timeout je neplatná.

Vypršel časový limit.

Parametr transactionType není jedním ze členů MessageQueueTransactionType.

Poznámky

RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru pomocí kontextu transakce definovaného parametrem transactionType. Pokud je kurzor na konci fronty, toto přetížení metody čeká na dostupnost zprávy nebo interval určený parametrem timeout vypršela.

Zadejte Automatic pro parametr transactionType, pokud již existuje kontext externí transakce připojený k vláknu, které chcete použít k přijetí zprávy. Zadejte Single, pokud chcete zprávu přijmout jako jednu interní transakci. Můžete zadat None, pokud chcete přijmout zprávu z transakční fronty mimo kontext transakce.

Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.

Když pracujete s transakčními frontami, vrácení transakce zpět způsobí, že všechny zprávy odebrané voláním RemoveCurrent se vrátí do fronty. Odebrání není nevratné, dokud transakce nebude potvrzena.

Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .

Viz také

Platí pro