次の一連のチュートリアルでは、Windows Communication Foundation (WCF) プログラミング エクスペリエンスについて説明します。 これらのチュートリアルを順番に実行すると、WCF アプリケーションを作成するために必要な手順の概要を理解できます。 完了すると、実行中の WCF サービスと、サービスを呼び出す WCF クライアントが作成されます。
このチュートリアルでは、開発環境として Visual Studio を使用していることを前提としています。 別の開発環境を使用している場合は、Visual Studio 固有の手順を無視します。
ダウンロードして実行できる WCF アプリケーションのサンプルについては、 Windows Communication Foundation のサンプルを参照してください。 サンプルの概要については、はじめにサンプルを参照してください。
サービスとクライアントの作成の詳細については、「 基本的な WCF プログラミング」を参照してください。
WCF の代替としての gRPC
gRPC は、WCF の一般的な代替手段である最新の RPC フレームワークです。 gRPC は HTTP/2 に基づいて構築されており、WCF に比して次のような多くの利点があります。
- パフォーマンス: gRPC は、特に実行時間の長い接続の場合、WCF よりもはるかに効率的です。
- スケーラビリティ: gRPC は、多数のクライアントとサーバーにスケーリングするように設計されています。
- セキュリティ: gRPC では、TLS や認証など、さまざまなセキュリティ メカニズムがサポートされています。
- クロスプラットフォーム: gRPC はプラットフォームに依存せず、さまざまなプログラミング言語で使用できます。
WCF アプリの開発または gRPC への移行の詳細については、次を参照してください。
WCF チュートリアル
最初の 3 つのチュートリアルでは、WCF サービス コントラクトを定義する方法、それを実装する方法、およびホストする方法について説明します。 作成するサービスは、コンソール アプリケーション内でセルフホステッドされます。 Microsoft インターネット インフォメーション サービス (IIS) でサービスをホストすることもできます。 詳細については、「 方法: IIS で WCF サービスをホストする」を参照してください。 チュートリアルではコードを使用してサービスを構成しますが、 構成ファイル内でサービスを構成することもできます。
-
ユーザー定義インターフェイスを使用して WCF コントラクトを作成します。 このコントラクトは、サービスが公開する機能を定義します。
-
コントラクトを定義したら、サービス クラスを使用してコントラクトを実装する必要があります。
-
サービスのエンドポイントを構成し、コンソール アプリケーションでサービスをホストします。 サービスをアクティブにするには、サービスを構成し、ランタイム環境内でホストする必要があります。 このランタイム環境は、サービスを作成し、そのコンテキストと有効期間を制御します。
次の 2 つのチュートリアルでは、クライアント アプリケーションを作成、構成、および使用して、サービスが公開する操作を呼び出す方法について説明します。 サービスは、クライアント アプリケーションがサービスと通信するために必要な情報を定義するメタデータを発行します。 Visual Studio は、このメタデータにアクセスするプロセスを自動化し、それを使用してサービスのクライアント アプリケーションを構築します。 Visual Studio を使用しない場合は、代わりに ServiceModel メタデータ ユーティリティ ツール (Svcutil.exe) を使用できます。
-
WCF サービスから WCF クライアント プロキシを作成するためのメタデータを取得します。 Visual Studio を使用してメタデータを取得してサービス参照を追加するか、ServiceModel メタデータ ユーティリティ ツールを使用できます。 クライアントがサービスへのアクセスに使用するエンドポイントを指定します。
-
WCF クライアント プロキシを使用してサービス操作を呼び出します。
リファレンス
こちらも参照ください
- 概念の概要
- ドキュメントのガイド
- Windows Communication Foundation とは
- WCF 機能の詳細
- 基本的なプログラミング ライフサイクル
- クライアントの構築
- 基本的な WCF プログラミング
- 作成方法: デュプレックス契約を締結する
- 方法: 双方向コントラクトを使用してサービスにアクセスする
- ServiceModel メタデータ ユーティリティ ツール (Svcutil.exe)
- 方法: Svcutil.exe を使用してメタデータ ドキュメントをダウンロードする
- 方法: 構成ファイルを使用してサービスのメタデータを発行する
- バインディングを使用してサービスとクライアントを構成する
- 作業の開始サンプル
- Windows Communication Foundation のサンプル
- セルフホスト