Compartilhar via


MessageBuffer Classe

Definição

Representa um buffer de memória que armazena uma mensagem inteira para consumo futuro.

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
Herança
MessageBuffer
Implementações

Comentários

O corpo de uma Message instância só pode ser consumido ou gravado uma vez. Se você quiser consumir uma Message instância mais de uma vez, deverá usar a MessageBuffer classe para armazenar completamente uma instância inteira Message na memória.

Uma MessageBuffer instância é construída chamando CreateBufferedCopy uma Message instância. Em seguida, um novo MessageBuffer é criado e retornado, o que assume a Message propriedade do conteúdo e lê todo o conteúdo na memória.

Para recuperar uma cópia de um Message do MessageBuffer, você deve chamar o CreateMessage método do MessageBuffer. Isso retorna uma cópia idêntica da instância original Message que você forneceu.

Você pode controlar o tamanho máximo do buffer definindo BufferSize para o número máximo de bytes desejados. Esse número não abrange necessariamente alocações transitórias relacionadas à criação do buffer ou propriedades anexadas à mensagem.

Você sempre deve fechar uma MessageBuffer instância chamando Close quando terminar de trabalhar com ela. Isso permite que os recursos do sistema sejam potencialmente liberados mais cedo.

Observação especial para usuários C++ gerenciados derivados dessa classe:

  • Coloque seu código de limpeza em (Ativado)(Iniciar)Fechar (e/ou OnAbort), não em um destruidor.

  • Evite destruidores: eles fazem com que o compilador gere automaticamente IDisposable

  • Evite membros não referenciados: eles podem fazer com que o compilador gere automaticamente IDisposable

  • Evite finalizadores; mas se você incluir um, deverá suprimir o aviso de build e a chamada SuppressFinalize(Object) e o próprio finalizador de (On)(Begin)Close (e/ou OnAbort) para emular o que teria sido o comportamento gerado automaticamente IDisposable .

Construtores

MessageBuffer()

Inicializa uma nova instância da classe MessageBuffer.

Propriedades

BufferSize

Obtém o número aproximado de bytes consumidos por este MessageBuffer.

MessageContentType

Obtém o tipo de conteúdo de mensagem armazenado nesse buffer.

Métodos

Close()

Termina de trabalhar com o buffer.

CreateMessage()

Retorna uma cópia da mensagem original.

CreateNavigator()

Cria um novo objeto XPathNavigator para navegar neste objeto. Esse método não pode ser herdado.

CreateNavigator(Int32)

Cria um novo objeto XPathNavigator para navegação deste objeto, com o navegador posicionado no nó especificado.

CreateNavigator(Int32, XmlSpace)

Cria um novo objeto XPathNavigator para a navegação neste objeto, com o navegador posicionado no nó especificado e no escopo xml:space.

CreateNavigator(XmlSpace)

Cria um novo objeto XPathNavigator para navegação deste objeto, com o escopo xml:space especificado.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
WriteMessage(Stream)

Grava todo o conteúdo desse buffer no fluxo de E/S especificado.

Implantações explícitas de interface

IDisposable.Dispose()

Libera os recursos não gerenciados usados pelo MessageBuffer e opcionalmente libera os recursos gerenciados. Esse método não pode ser herdado.

Aplica-se a