Поделиться через


BinaryMessageEncodingBindingElement Класс

Определение

Элемент привязки, который задает двоичный формат .NET для XML, используемого для кодирования сообщений.

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
Наследование
BinaryMessageEncodingBindingElement
Реализации

Примеры

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)

Комментарии

Кодирование — это процесс преобразования сообщения в последовательность байтов. Декодирование представляет собой обратный процесс. В Windows Communication Foundation (WCF) имеется три типа кодирования для сообщений SOAP: Text, Binary и MTOM.

BinaryMessageEncodingBindingElement — это элемент привязки, указывающий, что для кодирования сообщений следует использовать двоичный формат .NET для XML. В ней есть параметры для указания кодировки символов, а также используемой версии SOAP и WS-Addressing. Двоичное кодирование является наиболее эффективным, но наименее совместимым из параметров кодирования.

Дополнительные сведения об элементе привязки, который указывает, что сообщения кодируются с помощью текстового представления XML, см. в разделе TextMessageEncodingBindingElement.

Дополнительные сведения об элементе привязки, который указывает, что сообщения кодируются с использованием кодировки сообщений MTOM, см. в разделе MtomMessageEncodingBindingElement.

Чтобы реализовать пользовательский кодировщик сообщений, используйте класс MessageEncodingBindingElement.

Конструкторы

BinaryMessageEncodingBindingElement()

Инициализирует новый экземпляр класса BinaryMessageEncodingBindingElement.

Свойства

CompressionFormat

Получает или задает формат сжатия для элемента привязки.

MaxReadPoolSize

Возвращает или задает максимальное число средств чтения XML, выделенных пулу и готовых к обработке входящих сообщений.

MaxSessionSize

Возвращает или задает максимальный объем доступной в сеансе памяти для оптимизации процедур передачи.

MaxWritePoolSize

Возвращает или задает максимальное число модулей записи XML, выделенных пулу и готовых к обработке исходящих сообщений.

MessageVersion

Возвращает или задает используемые или ожидаемые версии сообщения SOAP и WS-Addressing.

ReaderQuotas

Возвращает или задает ограничения по сложности сообщений XML, которые могут обрабатываться конечными точками, настроенными с этим элементом привязки.

Методы

BuildChannelFactory<TChannel>(BindingContext)

Выполняет построение стека фабрики каналов на клиенте, создающей каналы заданного типа для заданного контекста.

BuildChannelListener<TChannel>(BindingContext)

Создает прослушиватель каналов на стороне службы, принимающей заданный тип канала для заданного контекста.

BuildChannelListener<TChannel>(BindingContext)

Инициализирует прослушиватель каналов для приема каналов заданного типа из контекста привязки.

(Унаследовано от BindingElement)
CanBuildChannelFactory<TChannel>(BindingContext)

Возвращает значение, показывающее, может ли элемент привязки создавать фабрику каналов для заданного типа канала.

(Унаследовано от BindingElement)
CanBuildChannelListener<TChannel>(BindingContext)

Возвращает значение, указывающее, может ли текущая привязка выполнить построение прослушивателя заданного типа каналов и контекста.

CanBuildChannelListener<TChannel>(BindingContext)

Возвращает значение, показывающее, может ли элемент привязки создать прослушиватель для заданного типа канала.

(Унаследовано от BindingElement)
Clone()

Создает новый объект BinaryMessageEncodingBindingElement, инициализированный из текущего объекта.

CreateMessageEncoderFactory()

Создает фабрику для двоичных кодировщиков сообщений, которые используют версии SOAP и WS-Addressing и кодировку символов, заданную текущим элементом привязки кодирования.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetProperty<T>(BindingContext)

Возвращает запрашиваемый типизированный объект, если он имеется, из соответствующего уровня стека элементов привязки.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ShouldSerializeMessageVersion()

Возвращает значение, которое указывает, должна ли версия структуры сообщения SOAP быть сериализована.

ShouldSerializeReaderQuotas()

Возвращает значение, которое указывает, должны ли значения ограничений, заданные для структуры сообщения SOAP, быть сериализованы.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext)

Записывает пользовательские элементы двоичного кодирования сообщений в созданные метаданные для конечной точки.

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Записывает пользовательские элементы двоичного кодирования сообщений в созданный WSDL для контракта.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Записывает пользовательские элементы двоичного кодирования сообщений в созданный WSDL для конечной точки.

Применяется к