WCF:バインディングから構成を取得する方法は?
-
10-07-2019 - |
質問
コードでWCFバインディングをインスタンス化しました:
var binding = new WSHttpBinding();
binding.Secuity.Mode = SecurityMode.Transport;
同等の構成を取得する方法(コード内)はありますか? 上記について、私は期待するでしょう:
<wsHttpBinding>
<binding name="NewBinding0">
<security mode="Transport" />
</binding>
</wsHttpBinding>
明らかに、configからバインディングインスタンスを取得する方法があります(すべてのプロキシがそれを必要とします)。
解決
実際のバインディングではこれを行うことはできませんが、代わりにBindingElement(WSHttpBindingElement)を作成し、それを構成セクションに入れてからセクションをXMLにシリアル化することができます(これが役立つ場合があります)。
バインディングオブジェクト自体は、構成XMLから直接デシリアライズされないことに注意してください。代わりに、WCFにはすべての構成オプション用にConfigurationElementから派生したクラスがあり、それらは後でバインディングオブジェクト自体を作成します。
他のヒント
いいえ、コードで作成されたバインディングまたは別のWCF要素を取得して構成設定に変換する方法はないと思います。興味深いアイデアとアプローチですが、今のところ、.NET 3.5のWCFでこれを行う方法はないと思います。
マーク
所属していません StackOverflow