BinaryMessageEncodingBindingElement Classe

Definição

O elemento de ligação que especifica o Formato Binário .NET para XML usado para codificar mensagens.

public ref class BinaryMessageEncodingBindingElement sealed : System::ServiceModel::Channels::MessageEncodingBindingElement
public ref class BinaryMessageEncodingBindingElement sealed : System::ServiceModel::Channels::MessageEncodingBindingElement, System::ServiceModel::Description::IPolicyExportExtension, System::ServiceModel::Description::IWsdlExportExtension
public sealed class BinaryMessageEncodingBindingElement : System.ServiceModel.Channels.MessageEncodingBindingElement
public sealed class BinaryMessageEncodingBindingElement : System.ServiceModel.Channels.MessageEncodingBindingElement, System.ServiceModel.Description.IPolicyExportExtension, System.ServiceModel.Description.IWsdlExportExtension
type BinaryMessageEncodingBindingElement = class
    inherit MessageEncodingBindingElement
type BinaryMessageEncodingBindingElement = class
    inherit MessageEncodingBindingElement
    interface IWsdlExportExtension
    interface IPolicyExportExtension
Public NotInheritable Class BinaryMessageEncodingBindingElement
Inherits MessageEncodingBindingElement
Public NotInheritable Class BinaryMessageEncodingBindingElement
Inherits MessageEncodingBindingElement
Implements IPolicyExportExtension, IWsdlExportExtension
Herança
BinaryMessageEncodingBindingElement
Implementações

Exemplos

var be = new BinaryMessageEncodingBindingElement();
be.MaxReadPoolSize = 16;
be.MaxSessionSize = 2048;
be.MaxWritePoolSize = 16;
be.MessageVersion = MessageVersion.Default;
XmlDictionaryReaderQuotas quotas = be.ReaderQuotas;

var binding = new CustomBinding();
var bpCol = new BindingParameterCollection();
var context = new BindingContext(binding, bpCol);
be.BuildChannelFactory<IDuplexChannel>(context);

var binding2 = new CustomBinding();
var bpCol2 = new BindingParameterCollection();
var context2 = new BindingContext(binding2, bpCol2);
be.BuildChannelListener<IDuplexChannel>(context2);

be.CanBuildChannelListener<IDuplexChannel>(context2);
BindingElement bindingElement = be.Clone();
MessageEncoderFactory mef = be.CreateMessageEncoderFactory();
MessageVersion mv = be.GetProperty<MessageVersion>(context);
Dim be As New BinaryMessageEncodingBindingElement()
be.MaxReadPoolSize = 16
be.MaxSessionSize = 2048
be.MaxWritePoolSize = 16
be.MessageVersion = MessageVersion.Default
Dim quotas As XmlDictionaryReaderQuotas = be.ReaderQuotas

Dim binding As New CustomBinding()
Dim bpCol As New BindingParameterCollection()
Dim context As New BindingContext(binding, bpCol)
be.BuildChannelFactory(Of IDuplexChannel)(context)

Dim binding2 As New CustomBinding()
Dim bpCol2 As New BindingParameterCollection()
Dim context2 As New BindingContext(binding2, bpCol2)
be.BuildChannelListener(Of IDuplexChannel)(context2)

be.CanBuildChannelListener(Of IDuplexChannel)(context2)
Dim bindingElement As BindingElement = be.Clone()
Dim mef As MessageEncoderFactory = be.CreateMessageEncoderFactory()
Dim mv As MessageVersion = be.GetProperty(Of MessageVersion)(context)

Observações

A codificação é o processo de transformar uma mensagem numa sequência de bytes. A decodificação é o processo inverso. O Windows Communication Foundation (WCF) inclui três tipos de codificação para mensagens SOAP: Texto, Binário e Mecanismo de Otimização de Transmissão de Mensagens (MTOM).

BinaryMessageEncodingBindingElement é o elemento de ligação que especifica que o Formato Binário .NET para XML deve ser usado para codificar mensagens. Tem opções para especificar a codificação de caracteres e o SOAP e WS-Addressing versão a utilizar. A codificação binária é a mais eficiente, mas a menos interoperável das opções de codificação.

Para mais informações sobre o elemento de ligação que especifica que as mensagens são codificadas usando uma representação textual de XML, veja TextMessageEncodingBindingElement.

Para mais informações sobre o elemento de ligação que especifica que as mensagens são codificadas usando a codificação de mensagens MTOM, veja MtomMessageEncodingBindingElement.

Para implementar um codificador de mensagens personalizado, use a MessageEncodingBindingElement classe.

Construtores

Name Description
BinaryMessageEncodingBindingElement()

Inicializa uma nova instância da BinaryMessageEncodingBindingElement classe.

Propriedades

Name Description
CompressionFormat

Obtém ou define o formato de compressão para o elemento de ligação.

MaxReadPoolSize

Obtém ou define o número máximo de leitores XML que são alocados a um pool e estão prontos para serem usados para processar mensagens recebidas.

MaxSessionSize

Obtém ou define a quantidade máxima de memória disponível dentro de uma sessão para otimizar os procedimentos de transmissão.

MaxWritePoolSize

Obtém ou define o número máximo de escritores XML que são alocados a um pool e estão prontos para serem usados para processar mensagens de saída.

MessageVersion

Recebe ou define a mensagem SOAP e WS-Addressing versões que são usadas ou esperadas.

ReaderQuotas

Obtém ou define restrições sobre a complexidade das mensagens XML que podem ser processadas por endpoints configurados com este elemento de ligação.

Métodos

Name Description
BuildChannelFactory<TChannel>(BindingContext)

Constrói a stack de channel factory no cliente que cria um tipo específico de canal para um contexto específico.

BuildChannelListener<TChannel>(BindingContext)

Constrói o ouvinte de canal no serviço que aceita um tipo específico de canal para um contexto especificado.

CanBuildChannelFactory<TChannel>(BindingContext)

Devolve um valor que indica se o elemento de ligação pode construir uma fábrica de canal para um tipo específico de canal.

(Herdado de BindingElement)
CanBuildChannelListener<TChannel>(BindingContext)

Devolve um valor que indica se a ligação de corrente pode construir um ouvinte para um tipo específico de canal e contexto.

Clone()

Cria um novo BinaryMessageEncodingBindingElement objeto inicializado a partir do atual.

CreateMessageEncoderFactory()

Cria uma fábrica para codificadores de mensagens binárias que utilizam as versões SOAP e WS-Addressing e a codificação de caracteres especificada pelo elemento de ligação de codificação atual.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetProperty<T>(BindingContext)

Retorna um objeto tipado solicitado, se presente, da camada apropriada na pilha de elementos de ligação.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ShouldSerializeMessageVersion()

Devolve se a versão da estrutura da mensagem SOAP deve ser serializada.

ShouldSerializeReaderQuotas()

Devolve se os valores das restrições impostas à complexidade da estrutura da mensagem SOAP devem ser serializados.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Implementações de Interface Explícita

Name Description
IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext)

Escreve uma mensagem binária personalizada a codificar elementos nos metadados gerados para um endpoint.

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Escreve uma mensagem binária personalizada que codifica elementos no WSDL gerado para um contrato.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Escreve uma mensagem binária personalizada que codifica elementos no WSDL gerado para um endpoint.

Aplica-se a