2011-08-16 10 views
0

私は、WCFスタック内でメッセージの書式設定、エンコード、およびセキュリティ要素を置き換える必要があるカスタムバインドでWCFを拡張しようとしています。このバインディングでの使いやすさを高めるため、組み込みバインディング(つまり、customBindingではなく名前付き要素)と同じ方法で、構成ファイルから構成可能にしたいと考えています。IBindingConfigurationElement - 設定を実装して設定に追加する方法は?

WCF標準バインディングはすべて、から継承し、順番にIBindingConfigurationElementを実装しています。このインターフェイスを実装するか、クラスから継承する場合、WCF構成システムで構成要素を使用できるようにするにはどうすればよいですか?

答えて

0

MSDNで少し掘り下げてbindingExtensions要素が見つかりました。から継承し、結合要素の集合としてこれらのクラスの機能を

<bindingExtensions> 
    <add name="wsHttpContextBinding" type="System.ServiceModel.Configuration.WSHttpContextBindingCollectionElement, System.WorkflowServices, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
    <add name="netTcpContextBinding" type="System.ServiceModel.Configuration.NetTcpContextBindingCollectionElement, System.WorkflowServices, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
    <add name="webHttpBinding" type="System.ServiceModel.Configuration.WebHttpBindingCollectionElement, System.ServiceModel.Web, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
    <add name="basicHttpContextBinding" type="System.ServiceModel.Configuration.BasicHttpContextBindingCollectionElement, System.WorkflowServices, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> 
</bindingExtensions> 

:そこドキュメントはあなたがバインディングをこのように追加できることを示しているが、私は私のmachine.configファイルでのぞき見を持っていたし、そこに登録され、次の3.5のバインディングを見つけました奇数StandardBindingCollectionElement<TStandardBinding, TBindingConfiguration>クラス。これは〜から継承し、関連付けられたStandardBindingElementを作成する正しいクラスと思われます。

コレクションは上記の構文を使用して登録され、組み込みのWCFバインディングとまったく同じように機能するはずです。

関連する問題