巨大な WSDL がありますが、そこからいくつかのメソッドが必要です。
これらのメソッドに対してのみ WCF プロキシを生成することは可能ですか?
「完全な実装」では、DLL に 9 メガバイトが追加されます。
データコントラクトと、関心のある操作のみを含むインターフェイスを手動で作成し、そのインターフェイスをChannelFactoryで使用して、それらの操作のみを対象とする基本的なクライアントを作成することができます。
...必要のないすべての操作と要素からWSDLを削除し、その結果をsvcutil.exeにフィードして、より単純なクライアントを作成することもできます。より安全な方法は、大きなWSDLをsvcutil.exeにフィードし、生成されたコードから不要なものを取り除くことです(コンパイラーは、想定外のものを削除するとすぐに通知するため、より安全です)。
いずれにせよ、私はあなたがいくつかの手動の介入を実行しなければならないと思います。
svcutil には/excludeType
フラグがあります。これは、メタデータのエクスポートおよびタイプの生成中に使用できます。
svcutil コマンド ライン ヘルプから:
/excludeType: - エクスポートまたは検証から除外する完全修飾型またはアセンブリ修飾型の名前。このオプションは、サービスまたは一連のサービス コントラクトのメタデータをエクスポートして、型をエクスポートから除外するときに使用できます。このオプションは、/dataContractOnly オプションと一緒には使用できません。(短縮形: /et)
svcutil.exe を使用して単一のコントラクトのメタデータをエクスポートするにはどうすればよいですか? への回答 これを使用して、同様の問題を解決します。
メソッドでそれを行う「すぐに使える」方法を知らないので、型フィルタリングがうまくいくことを願っています。