Partager via


MessageBuffer Classe

Définition

Représente une mémoire tampon qui stocke l'intégralité d'un message en vue de sa consommation ultérieure.

public ref class MessageBuffer abstract : IDisposable
public ref class MessageBuffer abstract : IDisposable, System::Xml::XPath::IXPathNavigable
public abstract class MessageBuffer : IDisposable
public abstract class MessageBuffer : IDisposable, System.Xml.XPath.IXPathNavigable
type MessageBuffer = class
    interface IDisposable
type MessageBuffer = class
    interface IXPathNavigable
    interface IDisposable
Public MustInherit Class MessageBuffer
Implements IDisposable
Public MustInherit Class MessageBuffer
Implements IDisposable, IXPathNavigable
Héritage
MessageBuffer
Implémente

Remarques

Le corps d'une instance Message ne peut être consommé ou écrit qu'une seule fois. Si vous souhaitez consommer une instance Message à plusieurs reprises, vous devez faire appel à la classe MessageBuffer pour stocker l'intégralité d'une instance Message en mémoire.

Une instance MessageBuffer est construite en appelant CreateBufferedCopy d'une instance Message. Un MessageBuffer est ensuite créé et retourné, ce qui suppose la propriété du Message et lit l'intégralité du contenu en mémoire.

Pour récupérer une copie d'un Message à partir du MessageBuffer, vous devez appeler la méthode CreateMessage du MessageBuffer. Cette méthode retourne une copie identique de l'instance Message d'origine fournie.

Vous pouvez contrôler la taille maximale de la mémoire tampon en affectant à BufferSize le nombre maximal d'octets souhaité. Ce nombre ne couvre pas nécessairement toutes les allocations provisoires en rapport avec la génération de la mémoire tampon ou les propriétés jointes au message.

Il est recommandé de toujours fermer une instance MessageBuffer en appelant Close lorsque vous avez fini de l'utiliser. Cela permet aux ressources système de pouvoir être éventuellement libérées plus tôt.

Remarque spéciale destinée aux utilisateurs C++ managés dérivés de cette classe :

  • Placez votre code de nettoyage dans (On)(Begin)Close (et/ou OnAbort), pas dans un destructeur.

  • Évitez les destructeurs : ils provoquent la génération automatique de IDisposable par le destructeur.

  • Évitez les membres sans référence : ils peuvent provoquer la génération automatique de IDisposable par le compilateur.

  • Évitez les finaliseurs ; toutefois, si vous en incluez un, vous devez supprimer l'avertissement de génération et appeler SuppressFinalize(Object) et le finaliseur lui-même à partir de (On)(Begin)Close (et/ou OnAbort) pour émuler ce qui aurait été le comportement IDisposable généré automatiquement.

Constructeurs

MessageBuffer()

Initialise une nouvelle instance de la classe MessageBuffer.

Propriétés

BufferSize

Obtient le nombre d'octets approximatif consommés par ce MessageBuffer.

MessageContentType

Obtient le type de contenu de message stocké dans cette mémoire tampon.

Méthodes

Close()

Finit d'utiliser la mémoire tampon.

CreateMessage()

Retourne une copie du message d'origine.

CreateNavigator()

Crée un objet XPathNavigator pour naviguer dans cet objet. Cette méthode ne peut pas être héritée.

CreateNavigator(Int32)

Crée un objet XPathNavigator pour naviguer dans cet objet, avec le navigateur positionné sur le nœud spécifié.

CreateNavigator(Int32, XmlSpace)

Crée un objet XPathNavigator pour naviguer dans cet objet, avec le navigateur positionné sur le nœud spécifié et la portée xml:space.

CreateNavigator(XmlSpace)

Crée un objet XPathNavigator pour naviguer dans cet objet, avec la portée xml:space spécifiée.

Equals(Object)

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

(Hérité de Object)
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)
WriteMessage(Stream)

Écrit le contenu entier de cette mémoire tampon dans le flux de données d'E/S spécifié.

Implémentations d’interfaces explicites

IDisposable.Dispose()

Libère les ressources non managées utilisées par MessageBuffer et libère éventuellement les ressources managées. Cette méthode ne peut pas être héritée.

S’applique à