エンティティ フレームワーク アプリケーションの作成 (SQL Server Compact)
ここでは、SQL Server Compact 4.0 データベースをデータ ソースとして使用するエンティティ フレームワーク アプリケーションの作成手順について説明します。
新しいエンティティ フレームワーク アプリケーションを作成するには
Visual Studio の [ファイル] メニューで、[新規作成] をポイントし、[プロジェクト] をクリックします。
[新しいプロジェクト] ダイアログ ボックスの [プロジェクトの種類] の一覧で、使用するプログラミング言語を展開し、[Visual C#] または [Visual Basic] をクリックします。
[テンプレート] の一覧で、[ASP.NET Web アプリケーション] をクリックします。
プロジェクトの名前 (SQLCompactEDMProject など) と場所を指定し、[OK] をクリックします。
Northwind.sdf のエンティティ データ モデルを生成するには、%ProgramFiles%\Microsoft SQL Server Compact Edition\v4.0\Samples フォルダーからプロジェクトがあるフォルダーに Northwind.sdf をコピーします。
[プロジェクト] メニューの [新しい項目の追加] をクリックします。
[テンプレート] ペインで、[ADO.NET エンティティ データ モデル] を選択します。
モデル名として「Northwind.edmx」と入力し、[追加] をクリックします。
Entity Data Model ウィザードの最初のページが表示されます。
[モデルのコンテンツの選択] ダイアログ ボックスで、[データベースから生成] をクリックして、[次へ] をクリックします。
[新しい接続] をクリックします。
[接続のプロパティ] ダイアログ ボックスで、[データ ソース] の [変更] をクリックします。
[Microsoft SQL Server Compact 4.0] を選択し、Northwind.sdf を参照して、[OK] をクリックします。
[データ接続の選択] ダイアログ ボックスが、指定したデータベース接続設定を使用して更新されます。
[エンティティ接続設定に名前を付けて App.Config に保存] チェック ボックスがオンになっており、値が NorthwindEntities に設定されていることを確認します。[次へ] をクリックします。
[データベース オブジェクトの選択] ダイアログ ボックスですべてのオブジェクトを消去した後、[テーブル] を展開し、テーブル オブジェクトとして Customers を選択します。
[モデル名前空間] に「NorthwindModel」と入力します。
[完了] をクリックしてウィザードを終了します。
ウィザードによって次の処理が行われます。
System.Data.Entity.dll、System.Runtime.Serialization.dll、System.Security.dll の各アセンブリに参照を追加します。
EDM を定義する Northwind.edmx ファイルを生成します。
EDM に基づいて生成されたクラスを含むソース コード ファイルを作成します。ソース コード ファイルを表示するには、ソリューション エクスプローラーで .edmx ファイルを展開します。
[プロジェクト] メニューの [ソリューションのビルド] をクリックします。
アプリケーションの Entity Data Model を作成した後で、それをデータ ソースとしてリンクします。
ツールボックスから [GridView] データ ツールをデザイン パレットにドラッグ アンド ドロップします。
[GridView] コントロールをクリックし、[GridView タスク] を開きます。
[データ ソースの選択] で [新しいデータ ソース] をクリックします。
[データ ソースの種類を選択] ダイアログ ボックスで [エンティティ] をクリックします。
[データ ソースに ID を指定します] で「Northwind1」と入力し、[OK] をクリックします。
データ ソースを構成するためのダイアログ ボックスが表示されます。エンティティ データ ソースを構成する前に、プロジェクトが既にビルドされていることを確認します。そうでない場合は、メタデータ エラーになります。
[NamedConnection] ボックスの一覧から、[NorthwindEntities] を選択します。[DefaultContainerName] には、自動的に [NorthwindEntities] という値が入ります。[OK] をクリックします。
[データの選択の構成] ダイアログ ボックスの [EntitySetName] で [Customers] をクリックします。[すべて選択] チェック ボックスをオンにすることも、表示する列を選択することもできます。[次へ] をクリックします。
[プロジェクト] メニューの [ソリューションのリビルド] をクリックします。
プロジェクトを実行します。作成したこの新しいアプリケーションは、データを Customers テーブルから取得し、グリッドのフォームに表示します。
アプリケーションのコード ページに、以下のいずれかのステートメントを追加します。
C#:
using NorthwindModel;
Visual Basic:
Imports SQLCompactEDM.NorthwindModel
モデルの名前は、Northwind.edmx ファイルに指定された名前空間の値に対応します。
重要
System.Data.Entity.dll アセンブリは、.NET Framework Version 3.5 の SP1 リリースの一部です。System.Data.Entity アセンブリのマネージ リファレンス トピックは、Entity Framework ドキュメントにあります。SQL Server Compact 4.0 は、.NET Framework Version 4 の Entity Framework 4 とだけ使用できます。SQL Server Compact 4.0 は .NET Framework 3.5 をサポートしておらず、エラーをスローします。