次の方法で共有


基本的なリソース サービス

このサンプルでは、Windows Communication Foundation (WCF) REST プログラミング モデルを使用して HTTP ベースのサービスを実装する方法を示します。このモデルでは、取得、追加、削除、および置換の各操作をサポートする顧客のコレクションが公開されます。このサンプルは、自己ホスト型 WCF HTTP サービス (Service.cs) と、サービスの作成およびサービスへの呼び出しを行うコンソール アプリケーション (program.cs) の 2 つのコンポーネントで構成されています。

サンプルの詳細

WCF サービスでは、リソース指向の REST 方式で顧客のコレクションが公開されます。つまり、顧客のコレクションには一意の URI があり、コレクションにはすべての顧客が含まれます。このサービスは、コレクション全体を取得するための、コレクションの URI への HTTP GET の送信と、新しい顧客をコレクションに追加するための、コレクションの URI への HTTP POST の送信をサポートしています。また、個々の顧客の URI では、顧客の詳細を取得する HTTP GET、顧客の詳細を置換する HTTP PUT、コレクションから顧客を削除する HTTP DELETE をサポートしています。新しい顧客がコレクションに追加されると、サービスはその顧客に一意の URI を割り当て、顧客の詳細の一部として URI を格納します。また、応答の Location HTTP ヘッダーを使用して、クライアントの URI と通信します。

App.config ファイルでは、true に設定されている HelpEnabled プロパティを持つ既定の WebHttpEndpoint を使用して、WCF サービスを構成します。その結果、WCF によって、自動的な HTML ベースのヘルプ ページが https://localhost:8000/Customers/help に作成されます。このページでは、サービスに対する HTTP 要求の作成方法とサービスの HTTP 応答へのアクセス方法に関する情報 (顧客の詳細を XML と JSON で表す方法の例など) が提供されます。

顧客のコレクション (一般的には、任意のリソース) をこの方法で公開すると、クライアントは、URI と HTTP の GETPUTDELETE、および POST を使用して一貫した方法でサービスと対話することができます。Program.cs では、HttpWebRequest を使用してこのようなクライアントを作成する方法を示します。これは、WCF REST サービスにアクセスする 1 つの方法にすぎません。ChannelFactoryWebClient などの他の .NET Framework クラスを使用して、サービスにアクセスすることも可能です。SDK 内の他のサンプル (「基本的な HTTP サービス」のサンプルや「形式の自動選択」のサンプルなど) では、これらのクラスを使用して WCF サービスと通信する方法を示します。

このサンプルは、コンソール アプリケーション内で実行される自己ホスト型サービスとクライアントで構成されています。コンソール アプリケーションが実行されると、クライアントはサービスに要求を発行し、応答からの適切な情報をコンソール ウィンドウに書き込みます。

このサンプルを使用するには

  1. 基本的なリソース サービス サンプルのソリューションを開きます。サンプルを正しく実行するには、Visual Studio 2010 を起動するときに、管理者として実行する必要があります。管理者として実行するには、Visual Studio 2010 アイコンを右クリックし、コンテキスト メニューの [管理者として実行] をクリックします。

  2. F6 キーを押してソリューションをビルドし、Ctrl キーを押しながら F5 キーを押してコンソール アプリケーションを実行します。コンソール ウィンドウが表示されて、実行中のサービスの URI および実行中のサービスの HTML ヘルプ ページの URI が示されます。ブラウザーでヘルプ ページの URI を入力することで、いつでも HTML ヘルプ ページを表示することができます。サンプルが実行されると、クライアントは現在のアクティビティのステータスを書き込みます。

  3. 任意のキーを押して、サンプルを終了します。

Ee662954.Important(ja-jp,VS.100).gif 注 :
サンプルは、既にコンピューターにインストールされている場合があります。続行する前に、次の (既定の) ディレクトリを確認してください。

<InstallDrive>:\WF_WCF_Samples

このディレクトリが存在しない場合は、「.NET Framework 4 向けの Windows Communication Foundation (WCF) および Windows Workflow Foundation (WF) のサンプル」にアクセスして、Windows Communication Foundation (WCF) および WF のサンプルをすべてダウンロードしてください。このサンプルは、次のディレクトリに格納されます。

<InstallDrive>:\WF_WCF_Samples\WCF\Basic\Web\BasicResourceService

参照

処理手順

基本的な HTTP サービス
形式の自動選択