Share via


WCF Data Services の複数のバージョンの使用

Open Data Protocol (OData) では、HTTP を介した標準のインターネット プロトコルを使用してデータ ソースにリモートでアクセスできます。OData の新しいバージョンがリリースされると、データ サービスでサポートされている OData の同バージョンがクライアント アプリケーションで使用されていない可能性がでてきます。新しいバージョンの OData を使用してデータ サービスにアクセスする古いクライアント アプリケーションもありますが、アクセス先の OData フィードよりも新しいバージョンの OData をサポートする新しいバージョンの WCF Data Services クライアント ライブラリを使用しているクライアント アプリケーションもあります。

WCF Data Services では、これらのバージョン管理シナリオを処理するために OData で提供されるサポートを利用しています。さらに、データ サービスが使用する OData のバージョンとは異なるバージョンがクライアントで指定されている場合に、データ モデル メタデータを生成および使用してクライアント データ サービス クラスを作成するためのサポートも備えられています。詳細については、「OData: プロトコルのバージョン管理」を参照してください。

プロトコルのバージョン

クライアントが要求するバージョンにかかわらず、サービスによって使用される OData プロトコルの最高バージョンを定義するようにデータ サービスを構成できます。そのためには、データ サービスで使用される DataServiceBehaviorMaxProtocolVersion プロパティに DataServiceProtocolVersion の値を指定します。詳細については、「データ サービスの構成 (WCF Data Services)」を参照してください。 

アプリケーションで WCF Data Services クライアント ライブラリを使用してデータ サービスにアクセスする場合、アプリケーションで使用している OData のバージョンと機能により、ライブラリでは自動的にこれらのヘッダーに正しい値が指定されます。既定では、WCF Data Services では要求された操作をサポートする最も低いプロトコル バーションが使用されます。

次の表に、OData プロトコルの特定のバージョンに対する WCF Data Services のサポートが用意されている .NET Framework および Silverlight のバージョンを示します。

OData プロトコルのバージョン サポートが用意されているバージョン

Version 1

  • .NET Framework Version 3.5 Service Pack 1 (SP1)

  • Silverlight Version 3

Version 2

  • .NET Framework Version 4

  • .NET Framework Version 3.5 SP1 の更新プログラム。更新プログラムは、Microsoft ダウンロード センターからダウンロードしてインストールできます。

  • Silverlight Version 4

メタデータのバージョン

既定では、WCF Data Services ではデータ モデルを表すために CSDL のバージョン 1.1 が使用されます。リフレクション プロバイダーまたはカスタム データ サービス プロバイダーに基づくデータ モデルの場合は、常にこの CSDL バージョンが使用されます。ただし、Entity Framework を使用してデータ モデルを定義している場合は、返される CSDL のバージョンは Entity Framework で使用されるバージョンと同じになります。CSDL のバージョンは、スキーマ要素の名前空間によって決定されます。仕様詳細については、次のトピックを参照してください。、「[MC-CSDL]: 概念スキーマ定義ファイル形式」を参照してください。

返されたメタデータの DataServices 要素には DataServiceVersion 属性も含まれます。この属性は、応答メッセージの DataServiceVersion ヘッダーの値と同じです。Visual Studio の [サービス参照の追加] ダイアログ ボックスなどのクライアント アプリケーションでは、この情報を使用して、データ サービスをホストする WCF Data Services のバージョンと正しく連動するクライアント データ サービス クラスを生成します。詳細については、「OData: プロトコルのバージョン管理」を参照してください。

参照

概念

データ サービス プロバイダー (WCF Data Services)

その他のリソース

WCF Data Services の定義