WCF と COBOL によるサービス指向アプリケーションの作成

Microsoft .NET Framework の一部である Windows Communication Foundation (WCF) を使用すると、サービス指向アプリケーションを作成できます。WCF サービスはいくつかの機能から構成されており、それらを各種のエンドポイントを介してクライアント アプリケーションに公開できます。

Enterprise Developer では、バージョン 3.0 以降の .NET Framework を対象とする WCF COBOL サービスを作成してアクセスできます。注:これは、ASMX Web 参照クライアントに置き換わる機能です。.NET Framework v. 2.0 を対象とする場合は、ASMX Web 参照クライアントが唯一の選択肢となります。

制限事項:Visual Studio 2012 Shell では、WCF プロジェクト タイプは使用できませんが、クライアント アプリケーションにサービス参照を追加することはできます。

以降では、WCF サービスの作成および使用のプロセスを簡単に説明します。

  1. 新しいプロジェクト (WCF サービス ライブラリ) を作成します。
  2. サービス コントラクトを指定します。

    コントラクトとは、サービス エンドポイントがクライアント アプリケーションに公開する操作を含むインターフェイスです。

    • コントラクトをインターフェイスとして作成し、System.ServiceModel.ServiceContract() 属性を指定します。
    • クライアント アプリケーションに公開するサービス操作は、このインターフェイスのメソッドです。それらのメソッドで System.ServiceModel.OperationContract() 属性を設定する必要があります。

    注:WCF サービスでは、System.ServiceModel 名前空間と System.Runtime.Serialization 名前空間のメンバーを主に使用します。

  3. WCF サービスを作成します。

    WCF サービスは、上で作成したインターフェイスと、サービス操作を表すメソッドを実装する、COBOL クラスとして定義できます。

  4. サービスを構成します。

    WCF サービスにアクセスするための詳細 (ホストおよびエンドポイントの詳細) をプロジェクトの App.config ファイルで指定します。App.config ファイルは、WCF 構成エディターを使用して編集できます。ファイルを右クリックして [WCF 構成の編集] を選択します。

  5. サービスをホストして実行します。

    サービスの機能を公開するサービス エンドポイントを指定し、サービスのメタデータ交換を有効にする必要があります。エンドポイントの基本要素 (いわゆる ABC) は、サービスのアドレス (Address)、バインディング (Binding)、および公開するサービス コントラクト (Contract) です。WCF サービス ライブラリ テンプレートでは、エンドポイントとメタデータ交換の詳細があらかじめ構成されており、必要に応じて変更できます。

    Visual Studio には WCF ホスト アプリケーションおよび WCF テスト クライアントが用意されているため、クライアント アプリケーションがなくてもサービスをホストしてテストできます。

  6. WCF クライアント アプリケーションを作成します。

    これは、サービスを使用するアプリケーションです。クライアントは、いずれかのエンドポイントを介して WCF サービスに接続し、公開されているサービス操作を使用します。

    クライアント アプリケーションを WCF ソリューションの新しいプロジェクトとして作成して、WCF サービス プロジェクトへのサービス参照を追加できます。プロジェクトを右クリックして [サービス参照の追加] を選択し、[サービス参照の追加] ダイアログでソリューション内のサービスを見つけて選択します。

  7. いずれかのエンドポイントを介してサービスにアクセスするようにクライアントを構成します。

    WCF サービスにアクセスするためのエンドポイントの詳細 (サービスのアドレス、バインディング、サービスの名前とコントラクト) をクライアント アプリケーションのプロジェクトの app.config ファイルで指定します。

  8. クライアントを使用して、公開されているサービス操作にアクセスします。

    WCF サービス プロジェクトがクライアント アプリケーションと同じソリューションに含まれている場合、通常は、デバッグを開始すると自動的にサービスがホストされます。この動作は、WCF サービス プロジェクトのプロジェクト プロパティで構成できます。

詳細については、「Tutorial: Creating and Accessing WCF COBOL Services」および「Samples」の「WCF Book Service and Client」を参照してください。