Share via


WCF Visual Studio テンプレート

Windows Communication Foundation (WCF) Visual Studio テンプレートは、WCF サービスや周辺アプリケーションをすばやく構築するために Visual Studio で使用できる、定義済みのプロジェクト テンプレートと項目テンプレートです。

WCF テンプレートの使用

WCF Visual Studio テンプレートには、サービス開発のための基本クラス構造が含まれています。これには、サービス コントラクト、データ コントラクト、サービス実装、および構成の基本的な定義が含まれます。これらのテンプレートを使用すると、最小限のコードを使用した単純なサービスや、より高度なサービスのビルド ブロックを作成できます。

WCF サービス ライブラリ プロジェクト テンプレート

WCF サービス ライブラリ プロジェクト テンプレートは、[新しいプロジェクト] ダイアログ ボックスの [Visual C#]\[WCF] および [Visual Basic]\[WCF] で使用できます。

WCF サービス テンプレートを使用して新しいプロジェクトを作成すると、次の 3 つのファイルが自動的に新しいプロジェクトに含まれます。

  • サービス コントラクト ファイル (IService1.cs または IService1.vb)。サービス コントラクト ファイルは、WCF サービスの属性が適用されたインターフェイスです。このファイルには、サービスの定義方法を示す単純なサービスの定義が含まれています。その他に、パラメータ ベースの操作や、単純なデータ コントラクトのサンプルも含まれています。このファイルは、WCF サービス プロジェクトの作成後にコード エディタに表示される既定のファイルです。
  • サービス実装ファイル (Service1.cs または Service1.vb)。サービス実装ファイルは、サービス コントラクト ファイルに定義されているコントラクトを実装します。
  • アプリケーション構成ファイル (App.config)。この構成ファイルには、セキュリティで保護された HTTP バインディングを含む WCF サービス モデルの基本要素が含まれます。サービスのエンドポイントも含まれており、メタデータの交換も可能です。

メモ   Visual Studio は、プロジェクトが WCF サービス ホスト (WcfSvcHost.exe)を使用して実行された場合 (既定の構成) は App.config ファイルをそのプロジェクトの構成ファイルとして認識するように構成されています。サービス ライブラリを実行可能ファイルでホストする場合は、DLL の構成ファイルは無効になるため、その実行可能ファイルの構成ファイルに構成コードを移動する必要があります。

WCF Web アプリケーション サービス テンプレート

WCF Web アプリケーション サービス テンプレートは、[新しいプロジェクト] ダイアログ ボックスの [Visual C#]\[Web] および [Visual Basic]\[Web] で使用できます。

WCF Web アプリケーション サービス テンプレートを使用して新しいプロジェクトを作成すると、次の 4 つのファイルがプロジェクトに追加されます。

  • サービス ホスト ファイル (service1.svc)
  • サービス コントラクト ファイル (IService1.cs または IService1.vb)
  • サービス実装ファイル (Service1.svc.cs または Service1.svc.vb)
  • Web 構成ファイル (web.config)

このテンプレートでは、自動的に Web サイトが作成されて (仮想ディレクトリに配置されます)、サービスがホストされます。

WCF Web サイト テンプレート

WCF Web サイト テンプレートは、[新しいプロジェクト] ダイアログ ボックスの [Visual C#]\[Web サイト]\[WCF サービス] および [Visual Basic]\[Web サイト]\[WCF サービス] で使用できます。

WCF サービス項目テンプレート

WCF サービス項目テンプレートは、既存の Visual Studio プロジェクトに WCF サービスをすばやく追加できるカスタム テンプレートです。

このテンプレートを使用するには、ソリューション エクスプローラ ペインでプロジェクトの名前を右クリックし、[追加] をポイントし、[新しい項目] をクリックして、[新しい項目の追加] ダイアログ ボックスを開きます。

サービス インターフェイス ファイルとサービス実装ファイルがルート プロジェクト フォルダに配置されます。

このテンプレートでは、新しいサービスの構成セクションが既存の構成ファイルと互換性がある場合にそれらがマージされます。

既存のプロジェクトが Web プロジェクトの場合は、サービス ホスト ファイル (service1.svc) も作成されます。

WCF WF サービス プロジェクト/項目テンプレート

これらのテンプレートは、ワークフロー サービスをホストする WCF サービスを作成します。ワークフロー サービスは、Web サービスのようにアクセスできるワークフローです。この他に、XAML プログラミング モデルや命令型プログラミング モデルのテンプレートも用意されています。これらのテンプレートを使用すると、シーケンシャル ワークフローやステート マシン ワークフローを作成できます。これらのワークフローの種類の詳細については、「Windows Workflow Foundation Tutorials」を参照してください。ワークフロー プロジェクトの作成方法の詳細については、「Creating Workflow Projects」を参照してください。

Visual Studio デザイナでは、コード ベースのワークフローではなく XOML 型のワークフローを使用すると応答性が向上します。XOML ワークフローは、既定で作成されるワークフロー型です。

WCF 配信テンプレート

このテンプレートを使用すると、RSS フィードや ATOM フィードを WCF サービスとして公開できます。詳細については、「WCF Syndication」を参照してください。

フィードのアドレスの変更

配信テンプレートは、実行中に Internet Explorer を使用します。Visual Studio のソリューション エクスプローラでプロジェクトを右クリックし、[プロパティ] をクリックします。次に、[デバッグ] タブをクリックすると、テンプレートの既定のアドレスが表示されます。Internet Explorer は、このアドレスにあるフィードを開きます。

フィードのアドレスを変更する場合は、[デバッグ] タブのアドレスも合わせて変更する必要があります。これを変更しないと、Internet Explorer が既定のアドレスにあるフィードを開こうとして、エラーになります。

AJAX 対応 WCF サービス項目テンプレート

このテンプレートは、AJAX コントロールを WCF サービスとして公開します。AJAX コントロールの詳細については、AJAX コントロールに関するドキュメントを参照してください。

Silverlight 対応 WCF サービス項目テンプレート

このテンプレートは、Silverlight クライアントまたはフロントエンドにデータを提供する Web サービスを作成します。このテンプレートを Web サイトまたは Web アプリケーションのプロジェクトに追加すると、Silverlight クライアントとの通信をサポートするサービス コードと構成が含まれた WCF サービスを作成できます。その後、[サービス参照の追加] を使用してサービスのクライアント プロキシをクライアントに追加し、Silverlight クライアントと Silverlight 対応 WCF サービスとの間でデータを交換できます。

このテンプレートにアクセスするには、ソリューション エクスプローラで Web サイト プロジェクトまたは Web アプリケーション プロジェクトを右クリックし、[追加] をポイントして、[新しい項目] をクリックします。次に、[Silverlight 対応 WCF サービス] をクリックします。

注意   Silverlight 対応 WCF サービスは、セキュリティ設定を一切有効にせずに basicHttpBinding エンドポイントを公開します。したがって、サービスに接続しているすべてのクライアントが、このサービスに関する情報を取得できることになります。また、サービスとクライアント間で交換されるメッセージの署名と暗号化も行われません。エンドポイントを正しくセキュリティで保護するには、ASP.NET 認証や https などのメカニズムを使用する必要があります。

関連項目

概念

WCF サービス ホスト (WcfSvcHost.exe)
WCF のテスト用クライアント (WcfTestClient.exe)

Copyright © 2007 by Microsoft Corporation. All rights reserved.