WebMessageEncodingBindingElement Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Habilita XML de texto simples, codificações mensagem JSON (JavaScript Object Notation) e conteúdo binário "bruto" para ser lido e gravado quando usado em uma associação WCF (Windows Communication Foundation).
public ref class WebMessageEncodingBindingElement sealed : System::ServiceModel::Channels::MessageEncodingBindingElement, System::ServiceModel::Description::IWsdlExportExtension
public sealed class WebMessageEncodingBindingElement : System.ServiceModel.Channels.MessageEncodingBindingElement, System.ServiceModel.Description.IWsdlExportExtension
type WebMessageEncodingBindingElement = class
inherit MessageEncodingBindingElement
interface IWsdlExportExtension
Public NotInheritable Class WebMessageEncodingBindingElement
Inherits MessageEncodingBindingElement
Implements IWsdlExportExtension
- Herança
- Implementações
Comentários
Codificação é o processo de transformar uma mensagem em uma sequência de bytes. A decodificação é o processo inverso. Esses processos exigem a especificação de uma codificação de caracteres. O WebMessageEncodingBindingElement funciona delegando a uma série de codificadores internos para lidar com as codificações XML e JSON de texto sem formatação e dados binários "brutos". Essa delegação é feita por um codificador de mensagem composta.
Esse elemento de associação e seu codificador composto são usados para controlar a codificação em cenários que não usam mensagens SOAP usadas WebHttpBindingpelo . Esses cenários incluem POX (Plain Old XML), REST (Transferência de Estado Representacional), RSS (Really Simple Syndication) e sindicalização Atom, e AJAX (Asynchronous JavaScript and XML). O codificador de mensagem composta não dá suporte a SOAP ou WS-Addressing e, portanto MessageVersion , sempre retorna None.
O elemento de associação pode ser configurado com uma codificação de caractere de gravação em tempo de construção usando o WebMessageEncodingBindingElement(Encoding) construtor . O Encoding valor especifica o comportamento na gravação para os casos XML JSON e Textual. Na leitura, todas as codificações de mensagem e codificações de texto válidas serão reconhecidas.
Esse construtor define valores padrão no número máximo de leitores e gravadores alocados para pools e que estão respectivamente disponíveis para processar mensagens de entrada e saída sem alocar novos leitores ou gravadores. As propriedades MaxReadPoolSize e MaxWritePoolSize também podem ser usadas para definir o número máximo de leitores e gravadores a serem alocados, respectivamente. Por padrão, são alocados 64 leitores e 16 escritores.
As restrições de complexidade padrão também são definidas por esse construtor no XmlDictionaryReaderQuotas associado a essa codificação pela ReaderQuotas propriedade para proteger contra ataques de DOS (classe de negação de serviço) que tentam usar a complexidade da mensagem para vincular recursos de processamento de ponto de extremidade.
O WebMessageEncodingBindingElement tem um CreateMessageEncoderFactory método que cria uma fábrica de codificadores de mensagens que produz codificadores e codificadores de mensagens JSON, XML ou Raw conforme apropriado, dependendo do tipo de conteúdo especificado.
O WebMessageEncodingBindingElement também fornece os métodos para criar as fábricas e ouvintes para os canais por meio dos quais as solicitações HTTP fluem.
O codificador composto e suas classes associadas e componentes de configuração são utilizáveis em confiança parcial e esse uso não requer permissões especiais.
Construtores
WebMessageEncodingBindingElement() |
Inicializa uma nova instância da classe WebMessageEncodingBindingElement. |
WebMessageEncodingBindingElement(Encoding) |
Inicializa uma nova instância da classe WebMessageEncodingBindingElement com uma codificação de caractere de gravação especificada. |
Propriedades
ContentTypeMapper |
Obtém ou define como o tipo de conteúdo de uma mensagem de entrada é mapeado para um formato. |
CrossDomainScriptAccessEnabled |
Obtém ou define um valor que determina se o acesso de script entre domínios está habilitado. |
MaxReadPoolSize |
Obtém ou define um valor que especifica o número máximo de leitores alocados a um pool e que estão disponíveis para processar mensagens de entrada sem alocar novos leitores. |
MaxWritePoolSize |
Obtém ou define um valor que especifica o número máximo de gravadores alocados a um pool e que estão disponíveis para processar mensagens de saída sem alocar novos gravadores. |
MessageVersion |
Obtém ou define a versão de mensagem que indica que o elemento de associação não usa SOAP nem WS-Addressing. |
ReaderQuotas |
Obtém as restrições na complexidade das mensagens SOAP que podem ser processadas por pontos de extremidade configurados com essa associação. |
WriteEncoding |
Obtém ou define a codificação de caracteres usada para gravar o texto da mensagem. |
Métodos
BuildChannelFactory<TChannel>(BindingContext) |
Cria a pilha de fábrica de canais no cliente que cria um tipo de canal especificado para um contexto especificado. |
BuildChannelListener<TChannel>(BindingContext) |
Cria a pilha do ouvinte de canais no cliente que aceita um tipo de canal especificado para um contexto especificado. |
CanBuildChannelFactory<TChannel>(BindingContext) |
Retorna um valor que indica se o elemento de associação pode criar uma fábrica de canais para um tipo de canal específico. (Herdado de BindingElement) |
CanBuildChannelListener<TChannel>(BindingContext) |
Retorna um valor que indica se a associação atual pode criar um ouvinte para um tipo de canal e contexto especificados. |
Clone() |
Cria um novo objeto WebMessageEncodingBindingElement inicializado do atual. |
CreateMessageEncoderFactory() |
Cria uma fábrica de codificador de mensagem que produz codificadores de mensagem que podem gravar mensagens XML ou JSON (JavaScript Object Notation). |
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) |
GetProperty<T>(BindingContext) |
Retorna o objeto do tipo solicitado, se presente, da camada apropriada na pilha de canais ou |
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) |
Implantações explícitas de interface
IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext) |
Gera informações de contrato WSDL de políticas de codificação contidas no elemento de associação. |
IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext) |
Gera informações de contrato WSDL de políticas de codificação contidas no elemento de associação. |