<webMessageEncoding><webMessageEncoding>

Consente alle codifiche di messaggi XML di testo normale e JSON (JavaScript Object Notation) e al contenuto binario "non elaborato" di essere letti e scritti quando vengono usati in un'associazione Windows Communication Foundation (WCF).Enables plain-text XML, JavaScript Object Notation (JSON) message encodings and "raw" binary content to be read and written when used in a Windows Communication Foundation (WCF) binding.

<system.serviceModel><system.serviceModel>
<le associazioni ><bindings>
<customBinding><customBinding>
<binding><binding>
<webMessageEncoding ><webMessageEncoding>

SintassiSyntax

<webMessageEncoding   
      maxReadPoolSize="Integer"  
   maxWritePoolSize="Integer"  

writeEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding" />  

Attributi ed elementiAttributes and Elements

Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.The following sections describe attributes, child elements, and parent elements.

AttributiAttributes

AttributoAttribute DescrizioneDescription
maxReadPoolSize Numero di messaggi che è possibile leggere contemporaneamente senza allocare nuovi lettori.The amount of messages that can be read simultaneously without allocating new readers. Dimensioni maggiori del pool rendono il sistema più tollerante ai picchi di attività al costo di un working set superiore.Larger pool sizes make the system more tolerant to activity spikes at the cost of a larger working set. L'impostazione predefinita è 64 lettori per ogni codificatore interno (testo, JSON e "non elaborato").The default is 64 readers for each of the inner encoders (text, JSON, and "raw").

Sebbene l'aumento di questo numero determini un maggiore consumo di memoria, in questo modo il codificatore sarà in grado di gestire picchi improvvisi di messaggi in arrivo usando i lettori del pool già creati anziché crearne di nuovi.Increasing this number increases memory consumption, but prepares the encoder to deal with sudden bursts of incoming messages because it is able to use readers from the pool that are already created instead of creating new ones.
maxWritePoolSize Numero di messaggi che è possibile inviare contemporaneamente senza allocare nuovi writer.The amount of messages that can be sent simultaneously without allocating new writers. Dimensioni maggiori del pool rendono il sistema più tollerante ai picchi di attività al costo di un working set superiore.Larger pool sizes make the system more tolerant to activity spikes at the cost of a larger working set. L'impostazione predefinita è 16 writer per ogni codificatore interno (testo, JSON e "non elaborato").The default is 16 writers for each of the inner encoders (text, JSON, and "raw").

Sebbene l'aumento di questo numero determini un maggiore consumo di memoria, in questo modo il codificatore sarà in grado di gestire picchi improvvisi di messaggi in uscita usando i writer del pool già creati anziché crearne di nuovi.Increasing this number increases memory consumption, but prepares the encoder to deal with sudden bursts of outgoing messages because it is able to use writers from the pool that are already created instead of creating new ones.
writeEncoding Specifica la codifica del set di caratteri da usare per l'emissione dei messaggi dell'associazione.Specifies the character set encoding to be used for emitting messages on the binding. I valori validi sono:Valid values are:

-UnicodeFffeTextEncoding: Codifica Unicode Big Endian.- UnicodeFffeTextEncoding: Unicode Big Endian encoding.
-Utf16TextEncoding: Codifica Unicode.- Utf16TextEncoding: Unicode encoding.
-Utf8TextEncoding: codifica a 8 bit.- Utf8TextEncoding: 8-bit encoding.

L'impostazione predefinita è Utf8TextEncoding.The default is Utf8TextEncoding. L'attributo è di tipo Encoding.This attribute is of type Encoding.

Elementi figlioChild Elements

ElementoElement DescrizioneDescription
<readerQuotas><readerQuotas> Definisce i vincoli sulla complessità dei messaggi SOAP che possono essere elaborati dagli endpoint configurati con questa associazione.Defines the constraints on the complexity of SOAP messages that can be processed by endpoints configured with this binding. L'elemento è di tipo XmlDictionaryReaderQuotasElement.This element is of type XmlDictionaryReaderQuotasElement.

Elementi padreParent Elements

ElementoElement DescrizioneDescription
<binding><binding> Definisce tutte le funzionalità di associazione dell'associazione personalizzata.Defines all binding capabilities of the custom binding.

NoteRemarks

La codifica è il processo di trasformazione di un messaggio in una sequenza di byte.Encoding is the process of transforming a message into a sequence of bytes. La decodifica è il processo inverso.Decoding is the reverse process. Questi processi richiedono la specifica di una codifica caratteri.These processes require the specification of a character encoding.

L'elemento webMessageEncoding delega a una serie di codificatori interni la gestione di codifiche XML di testo normale e JSON e dati binari non elaborati.The webMessageEncoding element works by delegating to a series of inner encoders to handle the plain-text XML and JSON encodings, and "raw" binary data. Questa delega viene eseguita mediante un codificatore di messaggi composto.This delegation is done by a composite message encoder.

Questo elemento di associazione e il relativo codificatore composto vengono usati per controllare la codifica in scenari che non usano la messaggistica SOAP usata dall'elemento webHttpBinding.This binding element and its composite encoder are used to control the encoding in scenarios that do not use SOAP messaging used by the webHttpBinding element. Questi scenari includono POX (Plain Old XML), REST (Representational State Transfer), RSS (Really Simple Syndication ) e AJAX (Atom syndication and Asynchronous JavaScript and XML).These scenarios include "Plain Old XML" (POX), Representational State Transfer (REST), Really Simple Syndication (RSS) and Atom syndication, and Asynchronous JavaScript and XML (AJAX). Il codificatore di messaggi composto non supporta SOAP o WS-Addressing.The composite message encoder does not support SOAP or WS-Addressing.

L'elemento di associazione può essere configurato con una codifica dei caratteri di scrittura mediante l'attributo writeEncoding.The binding element can be configured with a write character encoding by using the writeEncoding attribute. Il valore Encoding fornito specifica il comportamento in scrittura per le codifiche JSON e XML di testo.The supplied Encoding value specifies the behavior on write for the JSON and Textual XML cases. In lettura viene interpretata qualsiasi codifica di messaggi e codifica di testo valida.On read, any valid message encoding and text encoding is understood.

Le proprietà maxReadPoolSize e maxWritePoolSize possono inoltre essere usate per impostare rispettivamente il numero massimo di lettori e il numero massimo di writer da allocare.maxReadPoolSize and maxWritePoolSize can also be used to set the maximum number of readers and writers to be allocated respectively. Per impostazione predefinita vengono allocati 64 lettori e 16 writer.By default 64 readers and 16 writers are allocated.

Vincoli di complessità predefiniti vengono inoltre impostati utilizzando il <readerQuotas > elemento per la protezione da una classe di tipo denial of service (DOS) attacchi che tentano di utilizzare la complessità dei messaggi per bloccare l'elaborazione di endpoint risorse.Default complexity constraints are also set using the <readerQuotas> element to protect against a class of denial of service (DOS) attacks that attempt to use message complexity to tie up endpoint processing resources.

EsempioExample

<webMessageEncoding   
    maxReadPoolSize="256"  
    maxWritePoolSize="128"  
    messageVersion="None"  
    textEncoding="utf-8"   
/>  

Vedere ancheSee Also

WebMessageEncodingElement
CustomBinding
MessageEncodingBindingElement
WebMessageEncodingBindingElement
Codifica dei messaggiMessage Encoding
Scelta di un codificatore di messaggiChoosing a Message Encoder
AssociazioniBindings
Estensione delle associazioniExtending Bindings
Associazioni personalizzateCustom Bindings
<customBinding><customBinding>