次の方法で共有


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

手順 1/2

完了までの時間: 15 分

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

前提条件

この手順を完了するには、「 チュートリアル 1: エコー アダプターの開発」を完了している必要があります。

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

  1. Visual Studio を起動します。

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

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

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

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

WCF クライアントを参照、検索、生成する

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

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

  3. 次に、[構成...] をクリックしてアダプターと接続のプロパティを 構成します。 これにより、[ アダプターの構成] 画面が表示されます。

  4. [ アダプターの構成 ] 画面で、[ URI のプロパティ ] タブを選択して接続プロパティを構成します。 カスタムエコーアダプターカテゴリが表示されていることに注意してください - 接続形式。 [ 書式 ] カテゴリで、 EchoInUpperCaseTrue に変更します。

  5. [ アダプターの構成 ] 画面で、[ バインドのプロパティ ] タブを選択してアダプターのプロパティを構成します。 カスタム エコー アダプターカテゴリ [ 受信] と [ その他] が表示されていることに注意してください。 [ その他 ] カテゴリで、[ カウント]3 に変更します。

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

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

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

    Note

    既定のコントラクトの種類は [送信] です。 カテゴリの結果は、このコントラクトの種類と一致します。

  9. [ 利用可能なカテゴリと操作] で、3 つの操作をすべて選択します。 操作の数が多い場合は、検索を使用して選択内容を絞り込む場合があります。この場合、3 つしかありません。 [ 追加] をクリックして、選択した操作を生成された WCF インターフェイスの一部にします。

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

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

アダプター認証を構成する

  1. Visual Studio の [ソリューション] ウィンドウで、[ app.config] をダブルクリックします。

  2. 要素で address 属性を endpoint 見つけます。 次のようになっているはずです。

    <endpoint address="echov2://lobhostname/lobapplication?enableAuthentication=False&echoInUpperCase=True"  
        binding="echoAdapterBindingV2" bindingConfiguration="EchoAdapterBinding"  
        contract="EchoOutboundContract" name="EchoAdapterBinding_EchoOutboundContract" />  
    

    次に示すように 、enableAuthenticationを False から True に変更します。 これには、呼び出し元のアプリケーションがアダプターに資格情報を渡す必要があります。

    <endpoint address="echov2://lobhostname/lobapplication?enableAuthentication=True&echoInUpperCase=True"  
        binding="echoAdapterBindingV2" bindingConfiguration="EchoAdapterBinding"  
        contract="EchoOutboundContract" name="EchoAdapterBinding_EchoOutboundContract" />  
    
  3. ソリューションを保存するには、Visual Studio メニューの [ ファイル ] をクリックし、[ すべて保存] を選択します。

サンプル XML ファイルを作成する

  1. メモ帳のインスタンスを起動します。 [スタート] メニューを使用して、[ すべてのプログラム | アクセサリ ] をクリックし、[ メモ帳] を選択します。

  2. 次のサンプル データをメモ帳エディターにコピーします。

    <?xml version="1.0" encoding="utf-16"?>  
    <ns0:greeting xmlns:ns0="echov2://microsoft.adapters.samples.echov2/PreDefinedTypes">  
      <ns0:address>  
        <ns0:street1>123 Microsoft Way</ns0:street1>  
        <ns0:street2>Building # 4599</ns0:street2>  
        <ns0:city>Redmond</ns0:city>  
        <ns0:state>WA</ns0:state>  
        <ns0:zip>98052</ns0:zip>  
      </ns0:address>  
      <ns0:greetingText>Welcome to Redmond!</ns0:greetingText>  
    </ns0:greeting>              
    
  3. [メモ帳] メニューの [ ファイル ] をクリックし、[ 名前を付けて保存] を選択します。 ファイル名に「CustomGreetingInstance.xml」と入力し、エンコードに Unicode を選択し、プロジェクト ディレクトリまたは別の適切な場所に保存します。 後で参照できるように、完全なパスとファイル名に注意してください。

  4. ファイルが正常に保存されたら、テキスト エディターを閉じます。

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

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

  2. Visual Studio エディターの Main メソッド内で、次のコード行を追加して、生成された WCF クライアントのインスタンスを作成します。

    EchoOutboundContractClient client = new EchoOutboundContractClient();  
    
  3. 次に、アダプターの資格情報を確立するコードを追加します。 エコー アダプターで認証を有効にすると、ユーザー名の存在がチェックされますが、値はチェックされません。

    // pass client credentials  
    client.ClientCredentials.UserName.UserName = "username";  
    
  4. EchoStrings 操作を呼び出すコードを追加して続行します。

    // Invoke EchoStrings()  
    Console.WriteLine("Invoking EchoStrings() method against the adapter...");  
    string[] response = client.EchoStrings("Bonjour!");  
    foreach (string data in response)  
    {  
        Console.WriteLine(data);  
    }  
    
  5. EchoGreetings 操作を呼び出すコードを追加して続行します。

    // Invoke EchoGreetings()  
    Console.WriteLine("\nInvoking EchoGreetings() method against the adapter...");  
    microsoft.adapters.samples.echov2.Types.Greeting greeting = new microsoft.adapters.samples.echov2.Types.Greeting();  
    greeting.id = Guid.NewGuid();  
    greeting.sentDateTime = DateTime.Now;  
    greeting.greetingText = "Hello World!";  
    greeting.name = new microsoft.adapters.samples.echov2.Types.Name();  
    greeting.name.salutation = microsoft.adapters.samples.echov2.Types.Salutation.Miss;  
    greeting.name.firstName = "Jane";  
    greeting.name.middleName = "Z.";  
    greeting.name.lastName = "Smith";  
    microsoft.adapters.samples.echov2.Types.Greeting[] greetingArray = client.EchoGreetings(greeting);  
    foreach (microsoft.adapters.samples.echov2.Types.Greeting data in greetingArray)  
    {  
        Console.WriteLine(data.id + " " + data.sentDateTime + " " + data.greetingText + " " + data.name.firstName );  
    }  
    
  6. EchoCustomGreetingsFromFile 操作を呼び出すコードを追加して続行します。

    // Invoke EchoCustomGreetingFromFile()  
    Console.WriteLine("\nInvoking EchoCustomGreetingFromFile() method against the adapter ...");  
    // Copy the sample data from CustomGreeting-instance.xml file and place in appropriate folder  
    // as specified in the operation parameter  
    microsoft.adapters.samples.echov2.PreDefinedTypes.CustomGreeting   
    // change the Uri to point to the greeting instance xml file you created  
    customGreeting = client.EchoCustomGreetingFromFile(new Uri(@"c:\CustomGreetingInstance.xml"));  
    Console.WriteLine(customGreeting.greetingText + " " + customGreeting.address.city);  
    client.Close();  
    Console.ReadLine();  
    
  7. EchoCustomGreetingsFromFile テスト コードで、前の手順で作成したファイルがカスタム あいさつ文で使用されていることを確認します。 ファイルの場所を反映するようにコードを変更します。

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

  9. アプリケーションを実行します。 次のような出力が表示されます。

    アダプターに対する EchoStrings() メソッドの呼び出し...

    Bonjour!

    Bonjour!

    Bonjour!

    Bonjour!

    Bonjour!

    アダプターに対する EchoGreetings() メソッドの呼び出し...

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    アダプター ... に対する EchoCustomGreetingFromFile() メソッドの呼び出し

    レドモンドへようこそ! レドモンド

  10. Enter キーを押してプログラムを停止します。

私は何をしましたか?

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

次の手順

受信操作をテストするには、「 手順 2: エコー アダプターの受信ハンドラーをテストする」に進みます

参照

チュートリアル 2: .NET からエコー アダプターを使用する
手順 2: エコー アダプターの受信ハンドラーをテストする