次の方法で共有


SAP ソリューション成果物の WCF クライアントまたは WCF サービス コントラクトを生成する

アダプター サービス参照の追加 Visual Studio プラグインを使用して、SAP 成果物に対する選択した操作を対象とする WCF クライアント クラスまたは WCF サービス コントラクト (インターフェイス) を生成できます。 ServiceModel メタデータ ユーティリティ ツール (svcutil.exe) を使用して、WCF クライアント クラスまたは WCF サービス コントラクトを生成することもできます。ただし、アダプターの追加サービス参照プラグインは、標準の Microsoft Windows インターフェイスを介して ServiceModel メタデータ ユーティリティ ツールの機能を公開します。 また、svcutil.exe ツールでは使用できない参照および検索機能も提供され、SAP システムに接続するときに選択したバインド プロパティに基づいて構成ファイルが生成されます。

アダプター サービス参照の追加プラグインを使用したクライアント クラスの生成

アダプター サービス参照の追加プラグインを使用して WCF クライアント クラスを生成するには、次の手順を実行します。

WCF クライアント クラスを生成するには

  1. Visual Studio ソリューション エクスプローラーで、プロジェクトを右クリックし、[アダプター サービス参照の追加] をクリックします。

  2. [ アダプター サービス参照の追加 ] ダイアログ ボックスが開いたら、「 Visual Studio で SAP 操作のメタデータを取得 する」の手順に従って SAP システムに接続し、操作を参照して検索します。 選択した操作の WCF クライアント クラスを作成するには、[コントラクトの種類の選択] ドロップダウン リストから [クライアント (送信操作)] が選択されていることを確認します (これが既定です)。

  3. 対象とするすべての操作を選択したら、[ OK] を クリックして WCF クライアント クラスを生成します。

    アダプター サービス参照の追加プラグインは、プロジェクトに 2 つのファイルを追加します。

  • SAPBindingClient.cs。 このファイルには、選択した操作用に生成された WCF クライアント クラスとヘルパー コードが含まれています。

  • をApp.configします。このファイルには、バインド構成とクライアント エンドポイント構成が含まれています。 設定は、アダプター サービス参照プラグインのバインドと接続を構成したときに行った選択に基づいています。

    重要

    アダプター サービス参照の追加プラグインを使用しているときに、string 型のバインド プロパティの値を指定せず、既定値が null の場合、そのバインド プロパティは app.config ファイルでは使用できません。 必要に応じて、バインド プロパティとその値を app.config ファイルに手動で追加する必要があります。

アダプター サービス参照の追加プラグインを使用した WCF サービス コントラクトの生成

SAP アダプターを使用して SAP システムから IDOC、RFC、および tRFC を受信すると、コードはアダプターへのサービスとして機能します。 つまり、アダプターは SAP システムから適切な成果物を受け取り、コードで (受信) 操作を呼び出して、成果物をアプリケーションに配信します。

そのため、アダプターからこの受信操作を受信できる WCF サービスを実装する必要があります。 これを行うには、アダプター サービス参照の追加プラグインを使用して、操作のアダプターによって表示されるサービス コントラクトを表す .NET インターフェイスを生成します。 この .NET インターフェイスは、WCF サービス コントラクトとも呼ばれます。 アダプター サービス参照の追加プラグインでは、WCF サービスのスタブ実装を含むクラスも生成されます。 次に、このインターフェイスを実装して、操作の受信に使用できる WCF サービスを作成します。

アダプター サービス参照の追加プラグインを使用して WCF サービス コントラクトを生成するには、次の手順を実行します。

WCF サービス コントラクトを生成するには

  1. Visual Studio ソリューション エクスプローラーで、プロジェクトを右クリックし、[アダプター サービス参照の追加] をクリックします。

  2. [ アダプター サービス参照の追加 ] ダイアログ ボックスが開いたら、「 Visual Studio で SAP 操作のメタデータを取得 する」の手順に従って SAP システムに接続し、操作を参照して検索します。 選択した操作の WCF サービス コントラクトを作成するには、[コントラクトの種類の選択] ドロップダウン リストから [サービス (受信操作)] が選択されていることを確認します。

  3. 対象とするすべての操作を選択したら、[ OK] を クリックして WCF サービス コントラクトを生成します。

    アダプター サービス参照の追加プラグインは、プロジェクトに次の 3 つのファイルを追加します。

  • SAPBindingInterface.cs。 このファイルには、選択した操作用に生成された WCF サービス コントラクト (インターフェイス) とヘルパー コードが含まれています。

  • SAPBindingService.cs。 このファイルには、SAPBindingInterface.cs で定義されているインターフェイスを実装するスタブ WCF サービス クラスが含まれています。 RFC、tRFC、または IDOC を処理するビジネス ロジックは、このクラスのメソッドに直接実装できます。

  • をApp.configします。このファイルには、アダプター サービス参照プラグインのバインドと接続を構成したときに行った選択に基づくバインディング構成、エンドポイント動作、およびサービス エンドポイント構成が含まれています。

    重要

    アダプター サービス参照の追加プラグインを使用しているときに、string 型のバインド プロパティの値を指定せず、既定値が null の場合、そのバインド プロパティは app.config ファイルでは使用できません。 必要に応じて、バインド プロパティとその値を app.config ファイルに手動で追加する必要があります。

Note

WCF サービス コントラクトを生成するためにアダプター サービス参照プラグインの接続 URI を構成するときに、RFC サーバー パラメーターを指定する必要はありません。 SAP アダプターは、クライアント接続を介して SAP システムからメタデータを取得します。

svcutil.exe を使用して WCF クライアント クラスまたは WCF サービス コントラクトを生成する

svcutil.exe を使用して、アプリケーションの WCF クライアント クラスまたは WCF サービス コントラクトを生成できます。 SAP アダプターで使用するように svcutil.exe を構成する必要があります。 SAP アダプターでの svcutil.exe の構成と使用の詳細については、「 MySAP Business Suite 用 BizTalk アダプターでの ServiceModel メタデータ ユーティリティ ツールの使用」を参照してください。

Svcutil.exe は、WCF クライアント クラスまたは WCF サービス コントラクトを出力ファイルに生成します。 既定のファイル名は output.cs です。 このファイルは、Visual Studio プロジェクトに手動で含める必要があります。

参照

WCF チャネル モデルを使用して SAP アプリケーションを開発する