Partager via


MessageBuffer Classe

Définition

Représente une mémoire tampon qui stocke un message entier pour une consommation future.

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 Message instance ne peut être consommé ou écrit qu’une seule fois. Si vous souhaitez consommer une Message instance plusieurs fois, vous devez utiliser la MessageBuffer classe pour stocker complètement une instance entière Message en mémoire.

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

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

Vous pouvez contrôler la taille maximale de la mémoire tampon en définissant BufferSize le nombre maximal d’octets souhaités. Ce nombre ne couvre pas nécessairement les allocations temporaires liées à la création de la mémoire tampon ou aux propriétés attachées au message.

Vous devez toujours fermer une MessageBuffer instance en appelant Close une fois l’utilisation terminée. Cela permet aux ressources système d’être potentiellement libérées plus tôt.

Remarque spéciale pour les utilisateurs C++ managés dérivant de cette classe :

  • Placez votre code de nettoyage dans (On)(Begin)Close (et/ou OnAbort), et non dans un destructeur.
  • Évitez les destructeurs : ils provoquent la génération IDisposableautomatique du compilateur.
  • Évitez les membres non référencés : ils peuvent provoquer la génération IDisposableautomatique du compilateur.
  • Évitez les finaliseurs ; mais si vous en incluez un, vous devez supprimer l’avertissement et l’appel SuppressFinalize(Object) de build et le finaliseur lui-même de (On)(Begin)Close (et/ou OnAbort) afin d’émuler ce qui aurait été le comportement généré automatiquement IDisposable .

Constructeurs

Nom Description
MessageBuffer()

Initialise une nouvelle instance de la classe MessageBuffer.

Propriétés

Nom Description
BufferSize

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

MessageContentType

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

Méthodes

Nom Description
Close()

Termine l’utilisation de la mémoire tampon.

CreateMessage()

Retourne une copie du message d’origine.

CreateNavigator()

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

CreateNavigator(Int32, XmlSpace)

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

CreateNavigator(Int32)

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

CreateNavigator(XmlSpace)

Crée un XPathNavigator objet pour naviguer dans cet objet, avec l’étendue spécifiée xml:space .

Equals(Object)

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

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

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

(Hérité de Object)
WriteMessage(Stream)

Écrit tout le contenu de cette mémoire tampon dans le flux d’E/S spécifié.

Implémentations d’interfaces explicites

Nom Description
IDisposable.Dispose()

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

S’applique à