BinaryMessageEncodingBindingElement クラス

定義

メッセージをエンコードするために使用される .NET Binary Format for 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)

注釈

エンコーディングは、メッセージをバイト シーケンスに変換するプロセスです。 デコードは、その逆のプロセスです。 WCF (Windows Communication Foundation) には、SOAP メッセージのエンコードとして、テキスト、バイナリ、および MTOM (Message Transmission Optimization Mechanism) の 3 種類があります。

BinaryMessageEncodingBindingElement は、メッセージのエンコードに XML の .NET バイナリ形式を使用することを指定するバインド要素です。 文字エンコーディングと、使用する 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 にカスタム バイナリ メッセージ エンコーディング要素を書き込みます。

適用対象