モデルファーストアプローチ
このセクションでは、[Entity Data Model]ウィザードを使って.edmx ファイルを作成しクエリを実行する方法について説明します。
Entity Framework をインストールおよびセットアップする
Entity Framework をインストールするか、選択したバージョンのEntity Framework で必要とされるアセンブリへの参照を追加します。アセンブリはインストールディレクトリの[lib]サブフォルダ内にあります。Entity Framework 6 (EF6) の使用については、EF 6の使用 を参照してください。本製品 に付属するすべてのアセンブリの詳細については、インストールされるアセンブリ を参照してください。
サーバーエクスプローラでデータ接続を追加する
Entity Data Model を作成する前に、データ接続を作成する必要があります。これを行うには、
- [サーバーエクスプローラ]に移動->"データ接続" を右クリック->[接続を追加]...
- データソースボックスの横にある[変更]ボタンをクリックします。
- CData Azure Cosmos DB Data Source を選択し、[OK]をクリックします。
- 接続設定を構成し、[OK]をクリックします。
新しい項目をプロジェクトに追加する
Visual Studio ソリューションエクスプローラーでプロジェクトを右クリックし、[追加]->[新しい項目]をクリックします。
ADO.NET Entity Data Model を作成する
表示される[新しい項目の追加]ダイアログで[ADO.NET Entity Data Model]をクリックし、"CosmosDBEntityDataModel.edmx" などの適切なタイトルを入力します。
[Entity Data Model]ウィザードを使用する
[Entity Data Model]ウィザードを使って.edmx ファイルを作成するには、次の手順を実行してください。
- 最初のページで[データベースから生成]を選択します。
- 次のページで、プロジェクトで使用するデータプロバイダー接続を選択するか、新しい接続を作成します。
CacheLocation およびCacheMetadata 接続プロパティを設定してテーブルメタデータをキャッシュします。これらの接続プロパティを設定することは、Entity Framework モデルをより効率的に生成するために必要なことです。このプロセスの詳細については、メタデータのキャッシュ を参照してください。
- パスワードなどの機密データを接続文字列に含めるかどうかを選択します。機密データを接続文字列から除外した場合、生成される設定ファイルに接続文字列のプロパティがコピーされるときに、パスワードフィールドはコピーされません。
- エンティティの接続設定をApp.Config に保存するためのボックスを選択して、データ接続のコンテキストクラスの名前("CosmosDBEntities" など)を入力します。
Visual Studio がライブデータソースから必要な情報を取得すると、プロジェクトに含めることができるデータベースオブジェクトのリストがウィザードに表示されます。Visual StudioはAzure Cosmos DB からテーブルスキーマを取得するため、この手順が完了するまでに数分かかることがあります。
コードでLINQ コマンドを実行する
これで、コードでLINQ を使用する準備が整いました。
C#
CosmosDBEntities context = new CosmosDBEntities();
var CustomersQuery = from Customers in context.Customers
orderby Customers.CompanyName
select Customers;
VB.NET
Dim context As CosmosDBEntities = New CosmosDBEntities()
Dim CustomersQuery = From Customers In context.Customers
Order By Customers.CompanyName
Select Customers
Note:ファイルで必ず (c#)"using System.Linq"/(VB.Net)"Imports System.Linq" を宣言してください。