MessageQueueTransaction Classe

Définition

Fournit une transaction Message Queuing interne.

public ref class MessageQueueTransaction : IDisposable
public class MessageQueueTransaction : IDisposable
type MessageQueueTransaction = class
    interface IDisposable
Public Class MessageQueueTransaction
Implements IDisposable
Héritage
MessageQueueTransaction
Implémente

Remarques

Pour envoyer ou recevoir un message dans le cadre d’une transaction, vous pouvez utiliser la MessageQueueTransaction classe pour créer une transaction et la transmettre à une surcharge de la MessageQueue.Send méthode ou de la MessageQueue.Receive méthode qui prend un transaction paramètre. Les messages envoyés dans le cadre d’une transaction doivent être envoyés aux files d’attente transactionnelles. Les messages reçus à partir de files d’attente transactionnelles doivent être reçus à l’aide d’une transaction spécifiée.

En plus de la Receive méthode, vous pouvez recevoir des messages avec un identificateur spécifié ou un identificateur de corrélation spécifié. Consultez les méthodes et ReceiveByCorrelationId pour plus d’informations sur la ReceiveById réception sélective de messages à partir de files d’attente transactionnelles.

Les messages envoyés aux files d’attente transactionnelles sont supprimés si la transaction est validée. De même, les messages reçus à partir de files d’attente transactionnelles sont retournés à la file d’attente si la transaction est restaurée.

Si vous instanciez un MessageQueueTransaction et le passez à une surcharge applicable de la méthode ou Receive de la Send méthode pour envoyer un message à une file d’attente non transactionnelle ou recevoir un message d’une file d’attente non transactionnelle, la méthode lève une exception qui indique « Utilisation incorrecte des transactions ».

MessageQueueTransaction est threading apartment aware, donc si votre état d’appartement est STA, vous ne pouvez pas utiliser la transaction dans plusieurs threads. Visual Basic définit l’état du thread principal sur STA, vous devez donc appliquer le MTAThreadAttribute dans la Main sous-routine. Sinon, l'envoi d'un message transactionnel qui utilise un autre thread lève une exception MessageQueueException. Vous appliquez le MTAThreadAttribute en utilisant le fragment suivant.

<System.MTAThreadAttribute>  
 public sub Main()  

Constructeurs

MessageQueueTransaction()

Initialise une nouvelle instance de la classe MessageQueueTransaction.

Propriétés

Status

Obtient l'état de la transaction.

Méthodes

Abort()

Restaure la transaction interne en attente.

Begin()

Commence une nouvelle transaction Message Queuing interne.

Commit()

Valide une transaction interne en attente.

Dispose()

Libère toutes les ressources utilisées par MessageQueueTransaction.

Dispose(Boolean)

Libère les ressources non managées utilisées par MessageQueueTransaction et libère éventuellement les ressources managées.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
Finalize()

Libère les ressources détenues par l’instance actuelle.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Cohérence de thread

Ce type est thread-safe.

Voir aussi