次の方法で共有


手順 2: エコー アダプターの受信ハンドラーをテストする

手順 2/2

完了までの時間: 10 分

この手順では、エコー アダプターによって提供される受信サービスをテストします。 これを行うには、Visual Studio、アダプター サービス参照の追加 Visual Studio Plug-In、およびカスタム コードを使用します。

前提条件

この手順を完了するには、「 チュートリアル 1: エコー アダプターの開発」を完了している必要があります。 この手順は、「 手順 1: エコー アダプターの送信ハンドラーをテストする」とは無関係に完了できます。

Visual Studio プロジェクトを作成する

  1. Visual Studio を起動します。

  2. Visual Studio の [ ファイル ] メニューの [ 新規作成] をポイントし、[ プロジェクト] をクリックします。

  3. [新しいプロジェクト] ダイアログ ボックスで、次の操作を行います。

    プロパティ 目的
    プロジェクト タイプ [ Visual C#] をクリックします
    テンプレート [コンソール アプリケーション] をクリックします。
    名前 「ConsumeEchoAdapter_Inbound」と入力します。
    場所 「C:\Tutorials」と入力します
    [ソリューション名] 「ConsumeEchoAdapter_Inbound」と入力します。
  4. [OK] をクリックします。

  5. Visual Studio の [ ファイル ] メニューの [ すべて保存] をクリックします。

WCF サービスを参照、検索、生成する

  1. [Visual Studio ソリューション] ウィンドウで、プロジェクト ConsumeEchoAdapter_Inbound 右クリックし、[ アダプター サービス参照の追加 ] を選択して、アダプター サービス参照の追加プラグインを起動します。

  2. [ アダプター サービス参照の追加] 画面で、バインドを選択します。 これを行うには、 echoAdapterBindingV2 を選択します。

  3. 次に、[構成] をクリックしてアダプターと接続のプロパティを 構成します。 [アダプターの 構成] 画面が開きます。

  4. [ アダプターの構成 ] 画面で、[ バインドのプロパティ ] タブを選択してアダプターのプロパティを構成します。 カスタム エコー アダプターカテゴリ [ 受信] と [ その他] が表示されていることに注意してください。 [ その他 ] カテゴリの [ InboundFileSystemWatcherFolder ] をクリックし、監視するディレクトリを入力します。

  5. [ OK] をクリックして[アダプターの構成 ] 画面を閉じ、[ アダプター サービス参照の追加] 画面に戻ります。

  6. 次に、[ 接続 ] をクリックしてエコー アダプター (およびサポートされている架空の基幹業務システム) に接続します。 しばらくすると、接続の状態が [接続済み] に変わると、カテゴリ ツリー ([ カテゴリの選択] の下) が設定されます。

  7. 使用可能な受信操作を表示するには、 サービス コントラクトの種類[サービス (受信操作)] に変更します。

  8. カテゴリ ツリーで、[ メイン カテゴリ] をクリックします。 これにより、使用可能なカテゴリと操作の一覧に 1 つの受信操作が設定されます。 カテゴリはありません。

  9. [ 利用可能なカテゴリと操作] で、 OnReceiveEcho 操作を 選択します。 [ 追加] をクリックして、選択した操作を生成された WCF インターフェイスの一部にします。

  10. [ OK] を クリックして WCF インターフェイスを生成します。 これにより、アプリケーション構成ファイル (app.config)、WCF インターフェイス (EchoAdapterBindingInterface.cs)、WCF サービス (EchoAdapterBindingService.cs) がプロジェクトに追加されます。

  11. Visual Studio メニューの [ファイル] をクリックし、[すべて保存] を選択します。

エコー アダプターをテストする

  1. ソリューション エクスプローラーで、EchoAdapterBindingService.cs ファイルをダブルクリックします。

  2. Visual Studio エディターの OnReceiveEcho メソッド内で、既存の実装を次のように置き換えます。

    System.Console.WriteLine("path = " + path + ", len = " + length);
    
  3. ソリューション エクスプローラーで Program.cs ファイルをダブルクリックします。

  4. Visual Studio エディターの Main メソッド内で、WCF サービスをホストする次のコードを追加します。

    try
    {
        // Create a ServiceHost for the EchoServiceImpl type
        // and use the base address from app.config
        System.ServiceModel.ServiceHost host = new System.ServiceModel.ServiceHost(typeof(EchoAdapterBindingNamespace.EchoAdapterBindingService));
    
        // Open the ServiceHost to start listening for messages
        host.Open();
    
        Console.WriteLine("The service is ready.");
        Console.WriteLine("Press <ENTER> to terminate service.");
        Console.ReadLine();
    
        // Close the ServiceHost
        host.Close();
    }
    catch (TimeoutException ex)
    {
        Console.WriteLine(ex.Message);
        Console.WriteLine();
    }
    catch (System.ServiceModel.CommunicationException ex)
    {
        Console.WriteLine(ex.Message);
        Console.WriteLine();
    }
    
  5. Visual Studio の [ ファイル ] メニューの [ すべて保存] をクリックします。

  6. F5 キーを押してサンプルを開始します。

  7. "txt" 拡張子を持つファイルを、このチュートリアルで前に指定したディレクトリにドロップします。 プログラムの出力ウィンドウには、次のような情報が表示されます。

    サービスの準備は整っています。

    Enter キー>を押<してサービスを終了します。

    path = file:///C:/Tutorial/InboundTest/InboundTest.txt、len = 229179

  8. Enter キーを押してサービスを停止します。

私は何をしましたか?

この手順では、「 チュートリアル 1: エコー アダプターの開発」で開発したエコー アダプターによって公開される受信操作のテスト アプリケーションを作成しました。 これを行うには、Visual Studio プロジェクトを作成し、WCF サービスを生成し、WCF サービスをホストするコードを提供しました。 最後に、テスト アプリケーションを実行しました。

次の手順

これは、チュートリアルの最後の手順です。 受信操作の詳細については、「」を参照してください Microsoft.ServiceModel.Channels.Common.IInboundHandler

参照

チュートリアル 2: .NET からエコー アダプターを使用するチュートリアル 1: エコー アダプターを開発する