MessageQueueTransaction Klasse

Definition

Stellt eine interne Message Queuing-Transaktion bereit.

public ref class MessageQueueTransaction : IDisposable
public class MessageQueueTransaction : IDisposable
type MessageQueueTransaction = class
    interface IDisposable
Public Class MessageQueueTransaction
Implements IDisposable
Vererbung
MessageQueueTransaction
Implementiert

Hinweise

Um eine Nachricht als Teil einer Transaktion zu senden oder zu empfangen, können Sie die MessageQueueTransaction -Klasse verwenden, um eine Transaktion zu erstellen und sie an eine Überladung der MessageQueue.Send -Methode oder der -Methode zu übergeben, die MessageQueue.Receive einen transaction Parameter akzeptiert. Nachrichten, die im Rahmen einer Transaktion gesendet werden, müssen an Transaktionswarteschlangen gesendet werden. Nachrichten, die von Transaktionswarteschlangen empfangen werden, müssen mit einer angegebenen Transaktion empfangen werden.

Zusätzlich zur Receive -Methode können Sie Nachrichten mit einem angegebenen Bezeichner oder einem angegebenen Korrelationsbezeichner empfangen. Weitere Informationen zum selektiven Empfangen von Nachrichten von Transaktionswarteschlangen finden Sie unter den ReceiveById Methoden und ReceiveByCorrelationId .

Nachrichten, die an Transaktionswarteschlangen gesendet werden, werden entfernt, wenn ein Commit für die Transaktion ausgeführt wird. Auf ähnliche Weise werden nachrichten, die von Transaktionswarteschlangen empfangen werden, an die Warteschlange zurückgegeben, wenn für die Transaktion ein Rollback ausgeführt wird.

Wenn Sie eine MessageQueueTransaction instanziieren und an eine entsprechende Überladung der Send Methode oder Receive Methode übergeben, um eine Nachricht an eine nicht transaktionale Warteschlange zu senden oder eine Nachricht von einer nicht transaktionalen Warteschlange zu empfangen, löst die Methode eine Ausnahme aus, die auf "Falsche Transaktionsverwendung" hinweist.

MessageQueueTransaction ist für das Threading von Wohnungen aktiviert. Wenn Ihr Apartmentzustand lautet STA, können Sie die Transaktion also nicht in mehreren Threads verwenden. Visual Basic legt den Zustand des Hauptthreads auf fest STA, sodass Sie den MTAThreadAttribute in der Main Unterroutine anwenden müssen. Andernfalls wird durch das Senden einer Transaktionsmeldung mithilfe eines anderen Threads eine MessageQueueException-Ausnahme ausgelöst. Wenden Sie die MTAThreadAttribute mithilfe des folgenden Fragments an.

<System.MTAThreadAttribute>  
 public sub Main()  

Konstruktoren

MessageQueueTransaction()

Initialisiert eine neue Instanz der MessageQueueTransaction-Klasse.

Eigenschaften

Status

Ruft den Status der Transaktion ab.

Methoden

Abort()

Führt einen Rollback der anstehenden internen Transaktion aus.

Begin()

Beginnt eine neue interne Message Queuing-Transaktion.

Commit()

Führt einen Commit für eine anstehende interne Transaktion aus.

Dispose()

Gibt alle vom MessageQueueTransaction verwendeten Ressourcen frei.

Dispose(Boolean)

Gibt die von MessageQueueTransaction verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Finalize()

Gibt die von der aktuellen Instanz reservierten Ressourcen frei.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Threadsicherheit

Dieser Typ ist threadsicher.

Weitere Informationen