2012-01-20 20 views
0

WCFホストが公開する契約のリストを取得するクライアントはありますか?サービスで実装されたWCF契約を取得する

サービスを照会し、それが実装されているインターフェースを調べることを希望します。

+0

'ServiceHost'は、サービスコントラクトを実装するクラスであるサービスコントラクト(サービスホストがホストするサービスクラス)を実装していません –

+0

クライアントからの、またはサービスホスティング内からのコントラクトリストのクエリを行いますかコード? –

+0

質問を編集します。私は、クライアントがサーバーで実装されている契約インタフェースのリストを取得したいと思います。私は私の処方がより明確になることを願っています... Else just comment – SACO

答えて

0

これはWCFではサポートされていません。

サービスのWSDLコントラクトは照会できますが、WCFコントラクトまたはインタフェースは照会できません。

0

あなたができることは、公開されているものを見て、それがインターフェイスであると仮定することです。クラスが実装するさまざまなインターフェイスをすべて表示することはできません。たとえば、IFooServiceとIDisposableを実装したサービスがWooFを介して公開されている場合、IFooServiceのすべてのメソッドをクライアントから見ることができます。

WCFテストユーティリティは、特定のwsdlを取得してクライアントを生成します。そのためのソースは、適切な出発点である可能性があります。

もう1つの考え方は、指定されたwsdlのクライアントを生成するためにプログラムで呼び出すことができます。次にmsbuildを呼び出してコンパイルし、リフレクションを使用して出力アセンブリをロードします。それはかなり大量の仕事であり、私はあなたがそれで何をするのか分かりません。クライアントを検査して呼び出すには、かなり複雑なUIを構築する必要があります。

0

一般的に(Web)サービスは、WSDLなどのXMLベースのプロトコルによって記述されています。これは、サービスの検出と操作の説明の両方に使用されます。また、UDDIが使用されることもありますが、主にエンタープライズアプリケーションインテグレーション(内部使用)に使用されます。

したがって、WCFサービスでWSDL情報を生成して、クライアントにその情報を問い合わせさせることができます。