MessageQueueTransaction Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia transakcję wewnętrzną kolejkowania komunikatów.
public ref class MessageQueueTransaction : IDisposable
public class MessageQueueTransaction : IDisposable
type MessageQueueTransaction = class
interface IDisposable
Public Class MessageQueueTransaction
Implements IDisposable
- Dziedziczenie
-
MessageQueueTransaction
- Implementuje
Uwagi
Aby wysłać lub odebrać komunikat w ramach transakcji, możesz użyć MessageQueueTransaction klasy , aby utworzyć transakcję i przekazać ją do przeciążenia MessageQueue.Send metody lub MessageQueue.Receive metody, która przyjmuje transaction
parametr. Komunikaty wysyłane w ramach transakcji muszą być wysyłane do kolejek transakcyjnych. Komunikaty odebrane z kolejek transakcyjnych muszą zostać odebrane przy użyciu określonej transakcji.
Oprócz Receive metody można odbierać komunikaty z określonym identyfikatorem lub określonym identyfikatorem korelacji. Zobacz metody ReceiveById i ReceiveByCorrelationId , aby uzyskać więcej informacji na temat selektywnego odbierania komunikatów z kolejek transakcyjnych.
Komunikaty wysyłane do kolejek transakcyjnych są usuwane, jeśli transakcja zostanie zatwierdzona. Podobnie komunikaty odebrane z kolejek transakcyjnych są zwracane do kolejki, jeśli transakcja zostanie wycofana.
Jeśli utworzysz wystąpienie MessageQueueTransaction elementu i przekażesz go do odpowiedniego przeciążenia Send metody lub Receive metody w celu wysłania komunikatu do kolejki innej niż transakcyjna lub otrzymasz komunikat z kolejki innej niż transakcyjna, metoda zgłasza wyjątek wskazujący "Nieprawidłowe użycie transakcji".
MessageQueueTransaction jest wątkowa obsługa mieszkania, więc jeśli stan mieszkania to STA
, nie można użyć transakcji w wielu wątkach. Program Visual Basic ustawia stan wątku głównego na STA
wartość , więc należy zastosować element MTAThreadAttribute w Main
podroutynie. W przeciwnym razie wysłanie komunikatu transakcyjnego przy użyciu innego wątku zgłasza MessageQueueException wyjątek. Zastosuj element MTAThreadAttribute przy użyciu następującego fragmentu.
<System.MTAThreadAttribute>
public sub Main()
Konstruktory
MessageQueueTransaction() |
Inicjuje nowe wystąpienie klasy MessageQueueTransaction. |
Właściwości
Status |
Pobiera stan transakcji. |
Metody
Abort() |
Przywraca oczekującą transakcję wewnętrzną. |
Begin() |
Rozpoczyna nową transakcję wewnętrzną kolejkowania komunikatów. |
Commit() |
Zatwierdza oczekującą transakcję wewnętrzną. |
Dispose() |
Zwalnia wszelkie zasoby używane przez element MessageQueueTransaction. |
Dispose(Boolean) |
Zwalnia zasoby niezarządzane używane przez element MessageQueueTransaction i opcjonalnie zwalnia zasoby zarządzane. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
Finalize() |
Zwalnia zasoby blokowane przez bieżące wystąpienie. |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Dotyczy
Bezpieczeństwo wątkowe
Ten typ jest bezpieczny wątkowo.