次の方法で共有


方法 : コード内でクライアント バインディングを指定する

この例では、電卓サービスを使用するためのクライアントを作成し、そのクライアントのバインディングを強制的にコードで指定します。クライアントは CalculatorService にアクセスします。これにより、ICalculator インターフェイスが実装され、サービスとクライアントの両方で BasicHttpBinding クラスが使用されます。

ここで説明する手順では、電卓サービスが実行されていることを前提としています。サービスの構築については、「方法 : 構成でサービス バインディングを指定する」を参照してください。クライアント コンポーネントを自動的に生成するために、Windows Communication Foundation (WCF) に付属する ServiceModel Metadata Utility Tool (Svcutil.exe) も使用します。このツールでは、サービスにアクセスするためのクライアント コードが生成されます。

クライアントは 2 つの部分で構成されます。Svcutil.exe によって、ICalculator インターフェイスを実装する ClientCalculator が生成されます。次に、ClientCalculator のインスタンスを作成し、サービスのバインディングとアドレスをコードで指定して、このクライアント アプリケーションを作成します。

この例のソースのコピーについては、「Basic Binding」のサンプルを参照してください。

コード内でカスタム バインディングを指定するには

  1. コマンド ラインから Svcutil.exe を実行して、サービス メタデータからコードを生成します。

    Svcutil.exe <service's Metadata Exchange (MEX) address or HTTP GET address> 
    
  2. 生成されたクライアントには、クライアントの実装時に満たされなければならないサービス コントラクトを定義する ICalculator インターフェイスが含まれます。

  3. 生成されたクライアントは ClientCalculator も実装します。

  4. クライアント アプリケーション内で BasicHttpBinding クラスを使用する ClientCalculator のインスタンスを作成し、指定したアドレスのサービス操作を呼び出します。

  5. クライアントをコンパイルして実行します。

関連項目

概念

サービスとクライアントを構成するためのバインディングの使用