Condividi tramite


BinaryMessageEncodingBindingElement Classe

Definizione

Elemento di associazione che specifica il formato binario .NET per XML utilizzato per codificare i messaggi.

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
Ereditarietà
BinaryMessageEncodingBindingElement
Implementazioni

Esempio

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)

Commenti

La codifica è il processo di trasformazione di un messaggio in una sequenza di byte. La decodifica è il processo inverso. Windows Communication Foundation (WCF) include tre tipi di codifica per i messaggi SOAP, ovvero testo, binaria e MTOM (Message Transmission Optimization Mechanism).

BinaryMessageEncodingBindingElement è l'elemento di associazione che specifica che il formato binario .NET per XML deve essere usato per la codifica dei messaggi. È possibile specificare la codifica dei caratteri e la versione SOAP e WS-Addressing da usare. La codifica binaria è la più efficiente ma meno interoperabile delle opzioni di codifica.

Per altre informazioni sull'elemento di associazione che specifica che i messaggi vengono codificati usando una rappresentazione testuale di XML, vedere TextMessageEncodingBindingElement.

Per altre informazioni sull'elemento di associazione che specifica che i messaggi vengono codificati usando la codifica dei messaggi MTOM, vedere MtomMessageEncodingBindingElement.

Per implementare un codificatore di messaggi personalizzato, utilizzare la classe MessageEncodingBindingElement.

Costruttori

BinaryMessageEncodingBindingElement()

Inizializza una nuova istanza della classe BinaryMessageEncodingBindingElement.

Proprietà

CompressionFormat

Ottiene o imposta il formato di compressione per l'elemento di associazione.

MaxReadPoolSize

Ottiene o imposta il numero massimo di lettori XML allocati a un pool e che sono pronti per l'utilizzo per l'elaborazione dei messaggi in arrivo.

MaxSessionSize

Ottiene o imposta la quantità massima di memoria disponibile in una sessione per l'ottimizzazione delle procedure di trasmissione.

MaxWritePoolSize

Ottiene o imposta il numero massimo di writer XML allocati a un pool e disponibili per l'elaborazione di messaggi in uscita.

MessageVersion

Ottiene o imposta le versioni del messaggio SOAP e WS-Addressing utilizzate o previste.

ReaderQuotas

Ottiene o imposta vincoli sulla complessità dei messaggi XML che possono essere elaborati dagli endpoint configurati con questo elemento di associazione.

Metodi

BuildChannelFactory<TChannel>(BindingContext)

Compila lo stack della channel factory nel client che crea un tipo di canale specificato per un contesto specificato.

BuildChannelListener<TChannel>(BindingContext)

Compila il listener del canale sul servizio che accetta un tipo di canale specificato per un contesto specificato.

BuildChannelListener<TChannel>(BindingContext)

Inizializza un listener del canale per accettare canali di un tipo specificato dal contesto dell'associazione.

(Ereditato da BindingElement)
CanBuildChannelFactory<TChannel>(BindingContext)

Restituisce un valore che indica se l'elemento di associazione può compilare una channel factory per un tipo di canale specifico.

(Ereditato da BindingElement)
CanBuildChannelListener<TChannel>(BindingContext)

Restituisce un valore che indica se l'associazione corrente può compilare un listener per un tipo di canale e di contesto specificati.

CanBuildChannelListener<TChannel>(BindingContext)

Restituisce un valore che indica se l'elemento di associazione può compilare un listener per un tipo di canale specifico.

(Ereditato da BindingElement)
Clone()

Crea un nuovo oggetto BinaryMessageEncodingBindingElement inizializzato da quello corrente.

CreateMessageEncoderFactory()

Crea una factory per codificatori di messaggi binari che utilizzano le versioni SOAP e WS-Addressing e la codifica caratteri specificate dall'elemento di associazione della codifica corrente.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetProperty<T>(BindingContext)

Se presente, restituisce un oggetto tipizzato richiesto dal livello appropriato nello stack dell'elemento di associazione.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ShouldSerializeMessageVersion()

Restituisce un valore che indica se la versione della struttura del messaggio SOAP deve essere serializzata.

ShouldSerializeReaderQuotas()

Restituisce un valore che indica se i valori dei vincoli posizionati sulla complessità di struttura del messaggio SOAP devono essere serializzati.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext)

Scrive elementi di codifica di un messaggio binario personalizzato nei metadati generati per un endpoint.

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Scrive elementi di codifica di un messaggio binario personalizzato nel file WSDL generato per un contratto.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Scrive elementi di codifica di un messaggio binario personalizzato nel file WSDL generato per un endpoint.

Si applica a