このタスクでは、永続性サービスの操作を呼び出す単純なクライアントを作成します。テスト ツール WcfTestClient.exe が WCF サービス ライブラリ テンプレートによって使用されます。
クライアントの作成
[ソリューション エクスプローラ] ペインで、SimpleDurableService ソリューションのソリューション ノードを右クリックします。
[追加] を選択し、[新しいプロジェクト] を選択します。
[新しいプロジェクト] ダイアログ ボックスの [Windows] で、[コンソール アプリケーション] を選択します。
プロジェクトに DurableServiceTestClient という名前を付け、[OK] をクリックします。
DurableServiceTestClient プロジェクト ノードを右クリックし、[参照の追加] をクリックします。
[参照の追加] ダイアログ ボックスの [.NET] タブで System.ServiceModel アセンブリを選択し、[OK] をクリックします。
C# ソース ファイルに次の using ステートメントを追加します。
Visual Basic ソリューションを作成した場合は、DurableServiceTestClient プロジェクト ノードを右クリックし、[プロパティ] をクリックします。[参照] タブをクリックし、[インポートされた名前空間] の下の [System.ServiceModel] チェック ボックスをオンにします。
- SvcUtil.exe を使用して、永続性サービスのプロキシ コードと構成ファイルを生成します。
SvcUtil.exe の使用
SvcUtil.exe を使用するには、「ServiceModel Metadata Utility Tool」を参照してください。
プロキシ コードと構成ファイルを生成したら、次の手順に従ってそれらのファイルを DurableServiceTestClient プロジェクトに追加します。- [ソリューション エクスプローラ] ペインに移動します。
- DurableServiceTestClient プロジェクト ノードを右クリックします。
- [追加] を強調表示し、[既存の項目] を選択します。
- SvcUtil.exe で構成ファイルとプロキシ コード ファイルが生成されたフォルダに移動します。
- ファイルを選択し、[OK] をクリックします。
- 構成ファイルの名前が App.config になっていない場合は名前を変更します。
- Main メソッドの実装に以下のコードを追加します。
通常の WCF サービス クライアントと同様に、永続性サービス クライアントが作成されます。サービスのプロキシ コードから派生して、クライアントの新しいインスタンスが作成されます。次に、Open の呼び出しが行われ、その後サービス操作が呼び出されます。最後に、Close の呼び出しが行われ、クライアントがシャットダウンされます。
SimpleDurableService ソリューションの永続性サービスにクライアントを使用するには、SimpleDurableService プロジェクト プロパティからコマンド ライン引数を削除する必要があります。これを行うには、次の手順を実行します。
- SimpleDurableService プロジェクト ノードを右クリックし、[プロパティ] をクリックします。
- [デバッグ] タブをクリックし、[開始オプション] の詳細ペインで、テキスト ボックスから /client:"WfcTestClient.exe" を削除します。
SimpleDurableService ソリューション ノードを右クリックし、[プロパティ] をクリックします。
[プロパティ ページ] ダイアログ ボックスで、[マルチ スタートアップ プロジェクト] をオンにします。
SimpleDurableService がリストの一番上の項目として表示されない場合は、リスト ボックスの横の矢印をクリックして、一番上の項目にします。これは、クライアント アプリケーションがサービス上の操作を呼び出す前にサービスの実行を開始できるようにするために必要です。
リストの各プロジェクトのアクションを [なし] から [開始] に変更します。
[適用] をクリックしてから [OK] をクリックします。
サービス プロジェクトおよびクライアント プロジェクトの両方を構築します。Windows アプリケーションである IIS または他のホスト プロセスに永続性サービスをホストできますが、このチュートリアルでは、WfcSvcHost.exe にホストします。WcfSvcHost.exe は、テストの目的でサービスをホストする開発者用ツールです。
クライアントのコマンド ライン インターフェイスからの次の出力に注意してください。The current value is 3 The current value is -1 The current value is -5 Press <ENTER> to shut down the client.
それぞれの操作 (EndPersistence は除きます) の後に永続性が発生していることを確認する 1 つの方法として、https://www.microsoft.com/downloads から Microsoft SQL Server Management Studio Express をインストールし、クライアント アプリケーションにデバッグ ポイントを設定するやり方があります。それらのポイントをヒットした後、NetFx35Samples_DurableServiceStore データベースの InstanceData テーブルを確認します。テーブルには新しいエントリが追加され、EndPersistence 呼び出しが完了するまで、各操作後に更新されます。EndPersistence 呼び出しが完了すると、テーブルのエントリは削除されます。
永続性サービスの値を確認するもう 1 つの方法は、クライアントからサービスの最初の操作呼び出しを行い、Visual Studio で操作呼び出しにブレークポイントを置く方法です。3 回目の操作呼び出しを実行する前に、サービスをシャットダウンし、サービスを再起動します。ここで操作呼び出しを行います。サービスの状態が永続性データベースから復元され、現在の値に必要な応答がサービスから返されることを確認できます。
関連項目
タスク
タスク 1: 永続性サービス コントラクトの定義と実装
タスク 2: 永続性サービスの永続性の有効化
その他の技術情報
Copyright © 2007 by Microsoft Corporation. All rights reserved.