Entity Framework 6 (EF6) は、長年にわたる機能開発と安定化を備えた .NET 用の、試行およびテスト済みのオブジェクト リレーショナル マッパー (O/RM) です。
EF6 は O/RM として、リレーショナルとオブジェクト指向の世界の間のインピーダンスの不一致を減らし、開発者は、アプリケーションのドメインを表す厳密に型指定された .NET オブジェクトを使用してリレーショナル データベースに格納されているデータと対話するアプリケーションを記述でき、通常書き込む必要があるデータ アクセス "プラミング" コードの大部分が不要になります。
EF6 には、多くの一般的な O/RM 機能が実装されています。
- EF 型に依存しない POCO エンティティ クラスのマッピング
- 変更の自動追跡
- アイデンティティの解決と処理単位
- 即時読み込み、遅延読み込み、明示的読み込み
- LINQ を使用した厳密に型指定されたクエリの変換 (言語 INtegrated クエリ)
- 次のサポートを含む豊富なマッピング機能:
- 一対一、一対多、多対多のリレーションシップ
- 継承 (階層ごとのテーブル、型ごとのテーブル、および具象クラスごとのテーブル)
- 複合型
- ストアド プロシージャ
- エンティティ モデルを作成するためのビジュアル デザイナー。
- コードを記述してエンティティ モデルを作成する "Code First" エクスペリエンス。
- モデルは、既存のデータベースから生成してから手動で編集するか、最初から作成してから新しいデータベースを生成するために使用できます。
- WPF および WinForms を使用した.NET Framework アプリケーション モデル (ASP.NET を含む)、およびデータ バインドによる統合。
- ADO.NET に基づくデータベース接続と、SQL Server、Oracle、MySQL、SQLite、PostgreSQL、DB2 などに接続できる多数の プロバイダー 。
EF6 または EF Core を使用する必要がありますか?
EF Core は、よりモダンで軽量で拡張可能なバージョンの Entity Framework であり、EF6 とよく似た機能と利点があります。 EF Core は完全な書き換えであり、EF6 では使用できない多くの新機能が含まれていますが、EF6 の最も高度なマッピング機能もまだ不足しています。 機能セットが要件に一致する場合は、新しいアプリケーションで EF Core を使用することを検討してください。 EF Core と EF6 を比較 すると、この選択の詳細が確認されます。
始めましょう
EntityFramework NuGet パッケージをプロジェクトに追加するか、 Entity Framework Tools for Visual Studio をインストールします。 その後、EF6 を最大限に活用するために、ビデオ、チュートリアル、高度なドキュメントを参照してください。
Entity Framework の過去のバージョン
これは Entity Framework 6 の最新バージョンのドキュメントですが、その多くは過去のリリースにも適用されます。 EF リリースと導入された機能の完全な一覧については、「 新機能 と 過去 のリリース」を参照してください。
.NET