WebMessageEncodingBindingElement Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Permet de lire et d’écrire du contenu binaire xml en texte brut, javaScript Object Notation (JSON) et du contenu binaire « brut » lorsqu’il est utilisé dans une liaison Windows Communication Foundation (WCF).
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
- Héritage
- Implémente
Remarques
L’encodage est le processus de transformation d’un message en une séquence d’octets. Le décodage est le processus inverse. Ces processus nécessitent la spécification d’un encodage de caractères. Le WebMessageEncodingBindingElement travail consiste à déléguer à une série d’encodeurs internes pour gérer les encodages XML et JSON en texte brut et les données binaires « brutes ». Cette délégation est effectuée par un encodeur de message composite.
Cet élément de liaison et son encodeur composite sont utilisés pour contrôler l’encodage dans les scénarios qui n’utilisent pas la messagerie SOAP utilisée par le WebHttpBinding. Ces scénarios incluent « Plain Old XML » (POX), Representational State Transfer (REST), Really Simple Syndication (RSS) et Atom syndication, et JavaScript asynchrone et XML (AJAX). L’encodeur de message composite ne prend pas en charge SOAP ou WS-Addressing, et MessageVersion retourne Nonedonc toujours .
L’élément de liaison peut être configuré avec un encodage de caractères d’écriture au moment de la construction à l’aide du WebMessageEncodingBindingElement(Encoding) constructeur. La Encoding valeur spécifie le comportement en écriture pour les cas JSON et XML textuels. En lecture, tout encodage de message valide et encodage de texte est compris.
Ce constructeur définit les valeurs par défaut sur le nombre maximal de lecteurs et d’enregistreurs alloués aux pools et qui sont respectivement disponibles pour traiter les messages entrants et sortants sans allouer de nouveaux lecteurs ou enregistreurs. Les propriétés MaxReadPoolSize et MaxWritePoolSize peuvent également être utilisées pour définir le nombre maximal de lecteurs et d’enregistreurs à allouer respectivement. Par défaut, 64 lecteurs et 16 enregistreurs sont alloués.
Les contraintes de complexité par défaut sont également définies par ce constructeur sur l’encodage associé par la ReaderQuotas propriété pour se protéger contre une classe d’attaques par déni de service (DOS) qui tentent d’utiliser la XmlDictionaryReaderQuotas complexité des messages pour lier les ressources de traitement des points de terminaison.
Il WebMessageEncodingBindingElement a une méthode qui crée une CreateMessageEncoderFactory fabrique d’encodeur de message qui produit des décodeurs de messages JSON, XML ou Bruts, selon le type de contenu spécifié.
Il WebMessageEncodingBindingElement fournit également les méthodes permettant de créer les fabriques et les écouteurs pour les canaux via lesquels les requêtes HTTP circulent.
L’encodeur composite et ses classes et composants de configuration associés sont utilisables en confiance partielle et cette utilisation ne nécessite aucune autorisation spéciale.
Constructeurs
| Nom | Description |
|---|---|
| WebMessageEncodingBindingElement() |
Initialise une nouvelle instance de la classe WebMessageEncodingBindingElement. |
| WebMessageEncodingBindingElement(Encoding) |
Initialise une nouvelle instance de la WebMessageEncodingBindingElement classe avec un encodage de caractères d’écriture spécifié. |
Propriétés
| Nom | Description |
|---|---|
| ContentTypeMapper |
Obtient ou définit la façon dont le type de contenu d’un message entrant est mappé à un format. |
| CrossDomainScriptAccessEnabled |
Obtient ou définit une valeur qui détermine si l’accès au script inter-domaines est activé. |
| MaxReadPoolSize |
Obtient ou définit une valeur qui spécifie le nombre maximal de lecteurs alloués à un pool et qui est disponible pour traiter les messages entrants sans allouer de nouveaux lecteurs. |
| MaxWritePoolSize |
Obtient ou définit une valeur qui spécifie le nombre maximal d’enregistreurs alloués à un pool et qui est disponible pour traiter les messages sortants sans allouer de nouveaux enregistreurs. |
| MessageVersion |
Obtient ou définit la version du message qui indique que l’élément de liaison n’utilise pas SOAP ou WS-Addressing. |
| ReaderQuotas |
Obtient des contraintes sur la complexité des messages SOAP qui peuvent être traités par les points de terminaison configurés avec cette liaison. |
| WriteEncoding |
Obtient ou définit l’encodage de caractères utilisé pour écrire le texte du message. |
Méthodes
| Nom | Description |
|---|---|
| BuildChannelFactory<TChannel>(BindingContext) |
Génère la pile de fabrique de canaux sur le client qui crée un type de canal spécifié pour un contexte spécifié. |
| BuildChannelListener<TChannel>(BindingContext) |
Génère la pile de l’écouteur de canal sur le client qui accepte un type de canal spécifié pour un contexte spécifié. |
| CanBuildChannelFactory<TChannel>(BindingContext) |
Retourne une valeur qui indique si l’élément de liaison peut générer une fabrique de canaux pour un type spécifique de canal. (Hérité de BindingElement) |
| CanBuildChannelListener<TChannel>(BindingContext) |
Retourne une valeur qui indique si la liaison actuelle peut générer un écouteur pour un type de canal et de contexte spécifié. |
| Clone() |
Crée un WebMessageEncodingBindingElement objet initialisé à partir de celui en cours. |
| CreateMessageEncoderFactory() |
Crée une fabrique d’encodeur de message qui produit des encodeurs de messages qui peuvent écrire des messages JSON (JavaScript Object Notation) ou XML. |
| 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) |
| GetProperty<T>(BindingContext) |
Retourne l’objet du type demandé, le cas échéant, à partir de la couche appropriée dans la pile de canaux ou |
| 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) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext) |
Génère des informations de contrat WSDL à partir de stratégies d’encodage contenues dans l’élément de liaison. |
| IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext) |
Génère des informations de contrat WSDL à partir de stratégies d’encodage contenues dans l’élément de liaison. |