BinaryMessageEncodingBindingElement Klasse

Definition

Das Bindungselement, das das .NET Binary XML-Format angibt, das verwendet wird, um Nachrichten zu codieren.

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
Vererbung
BinaryMessageEncodingBindingElement
Implementiert

Beispiele

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)

Hinweise

Beim Codieren wird eine Nachricht in eine Bytefolge transformiert. Beim Decodieren wird dieser Prozess umgekehrt. Windows Communication Foundation (WCF) enthält drei Typen für die Codierung von SOAP-Nachrichten: Text, binär und Message Transmission Optimization Mechanism (MTOM).

BinaryMessageEncodingBindingElement ist das Bindungselement, das angibt, dass das .NET-Binärformat für XML zum Codieren von Nachrichten verwendet werden soll. Es verfügt über Optionen zum Angeben der Zeichencodierung sowie der zu verwendenden SOAP- und WS-Addressing-Version. Die binäre Codierung ist die effizienteste, aber am wenigsten interoperabel der Codierungsoptionen.

Weitere Informationen zum Bindungselement, das angibt, dass Nachrichten mithilfe einer Textdarstellung von XML codiert werden, finden Sie unter TextMessageEncodingBindingElement.

Weitere Informationen zum Bindungselement, das angibt, dass Nachrichten mithilfe der MTOM-Nachrichtencodierung codiert werden, finden Sie unter MtomMessageEncodingBindingElement.

Verwenden Sie die MessageEncodingBindingElement-Klasse, um einen benutzerdefinierten Nachrichtenencoder zu implementieren.

Konstruktoren

BinaryMessageEncodingBindingElement()

Initialisiert eine neue Instanz der BinaryMessageEncodingBindingElement-Klasse.

Eigenschaften

CompressionFormat

Ruft das Komprimierungsformat für das Bindungselement ab oder legt dieses fest.

MaxReadPoolSize

Ruft die maximale Anzahl an XML-Readern ab, die einem Pool zugeordnet sind und zum Verarbeiten eingehender Nachrichten verfügbar sind, oder legt diese Anzahl fest.

MaxSessionSize

Ruft die Höchstmenge an Arbeitsspeicher innerhalb einer Sitzung ab oder legt sie fest, die verfügbar ist, um Übertragungsprozeduren zu optimieren.

MaxWritePoolSize

Ruft die maximale Anzahl an XML-Writern ab, die einem Pool zugeordnet sind und zum Verarbeiten ausgehender Nachrichten verfügbar sind, oder legt diese Anzahl fest.

MessageVersion

Ruft die Versionen der SOAP-Nachricht und WS-Addressing ab, die verwendet oder erwartet werden, bzw. legt diese fest.

ReaderQuotas

Ruft Beschränkungen der Komplexität von XML-Nachrichten ab, die von mit diesem Bindungselement konfigurierten Endpunkten verarbeitet werden können, oder legt Beschränkungen fest.

Methoden

BuildChannelFactory<TChannel>(BindingContext)

Erstellt den Kanalfactorystapel auf dem Client, der einen angegebenen Kanaltyp für einen angegebenen Kontext erstellt.

BuildChannelListener<TChannel>(BindingContext)

Erstellt den Kanallistener auf dem Dienst, der einen festgelegten Kanaltyp für einen bestimmten Kontext akzeptiert.

BuildChannelListener<TChannel>(BindingContext)

Initialisiert einen Kanallistener, der Kanäle eines bestimmten Typs aus dem Bindungskontext annimmt.

(Geerbt von BindingElement)
CanBuildChannelFactory<TChannel>(BindingContext)

Gibt einen Wert zurück, der angibt, ob das Bindungselement eine Kanalfactory für einen bestimmten Typ von Kanälen erstellen kann.

(Geerbt von BindingElement)
CanBuildChannelListener<TChannel>(BindingContext)

Gibt einen Wert zurück, der angibt, ob die aktuelle Bindung einen Listener für einen angegebenen Typ von Kanal und Kontext erstellen kann.

CanBuildChannelListener<TChannel>(BindingContext)

Gibt einen Wert zurück, der angibt, ob das Bindungselement einen Listener für einen bestimmten Typ von Kanal erstellen kann.

(Geerbt von BindingElement)
Clone()

Erstellt ein neues, aus dem aktuellen Objekt initialisiertes BinaryMessageEncodingBindingElement-Objekt.

CreateMessageEncoderFactory()

Erstellt eine Factory für binäre Nachrichtenencoder, die die SOAP- und WS-Adressierungsversionen und die Zeichencodierung verwenden, die vom aktuellen Codierungsbindungselement festgelegt wurden.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetProperty<T>(BindingContext)

Gibt ggf. ein angefordertes typisiertes Objekt aus der entsprechenden Ebene im Bindungselementstapel zurück.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ShouldSerializeMessageVersion()

Gibt zurück, ob die SOAP-Meldungsstrukturversion serialisiert werden soll.

ShouldSerializeReaderQuotas()

Gibt zurück, ob die Werte von Einschränkungen, die auf der Komplexität der SOAP-Meldungsstruktur platziert wurden, serialisiert werden sollen.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext)

Schreibt benutzerdefinierte binäre Nachrichtencodierungselemente in die generierten Metadaten für einen Endpunkt.

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Schreibt benutzerdefinierte binäre Nachrichtencodierungselemente in die generierte WSDL für einen Vertrag.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Schreibt benutzerdefinierte binäre Nachrichtencodierungselemente in die generierte WSDL für einen Endpunkt.

Gilt für: