Entity Framework の用語集

Code First

コードを使用して Entity Framework モデルを作成すること。 モデルは、既存のデータベースを対象にすることも、新しいデータベースを対象にすることもできます。

Context

データベースとのセッションを表し、クエリを実行してデータを保存できるようにするクラス。 コンテキストは、DbContext または ObjectContext クラスから派生します。

規約 (Code First)

クラスからモデルの形状を推測するために、Entity Framework で使用される規則。

Database First

EF Designer を使用して、既存のデータベースを対象にした Entity Framework モデルを作成すること。

一括読み込み

ある型のエンティティのクエリで、クエリの一部として関連エンティティも読み込まれる、関連データの読み込みのパターン。

EF デザイナー

ボックスと線を使用して Entity Framework モデルを作成できる、Visual Studio のビジュアル デザイナー。

エンティティ

顧客、製品、注文などのアプリケーション データを表すクラスまたはオブジェクト。

Entity Data Model

エンティティと、エンティティ間のリレーションシップを記述するモデル。 EF では、EDM を使用して、開発者のプログラムの対象となる概念モデルを記述します。 EDM は、Peter Chen 博士によって導入されたエンティティ リレーションシップ モデルを基に構築されています。 EDM はもともと、Microsoft の一連の開発者向けテクノロジとサーバー テクノロジ全体の共通データ モデルになることを主な目的として開発されました。 EDM は、OData プロトコルの一部としても使用されます。

明示的読み込み

API を呼び出すことによって関連オブジェクトが読み込まれる、関連データの読み込みのパターン。

Fluent API

Code First モデルを構成するために使用できる API。

外部キーの関連付け

外部キーを表すプロパティが依存エンティティのクラスに含まれているエンティティ間の関連付け。 たとえば、Product には CategoryId プロパティが含まれています。

依存リレーションシップ

プリンシパル エンティティの主キーが依存エンティティの主キーの一部であるリレーションシップ。 このようなリレーションシップでは、プリンシパル エンティティが存在しないと、依存エンティティは存在できません。

独立した関連付け

依存エンティティのクラスに外部キーを表すプロパティがないエンティティ間の関連付け。 たとえば、Product クラスには Category とのリレーションシップが含まれていますが、CategoryId プロパティはありません。 Entity Framework では、2 つの関連付け End のエンティティの状態とは別に、関連付けの状態を追跡します。

遅延読み込み

ナビゲーション プロパティにアクセスすると、関連オブジェクトが自動的に読み込まれる、関連データの読み込みのパターン。

Model First

EF Designer を使用して、新しいデータベースの作成に使用する Entity Framework モデルを作成すること。

別のエンティティを参照するエンティティのプロパティ。 たとえば、Product には Category ナビゲーション プロパティが含まれ、Category には Products ナビゲーション プロパティが含まれます。

POCO

Plain-Old CLR Object の頭字語。 どのフレームワークとも依存関係がない単純なユーザー クラス。 EF のコンテキストでは、EntityObject から派生せず、任意のインターフェイスを実装するか、EF で定義されている属性を保持するエンティティ クラス。 永続化フレームワークから切り離されたこのようなエンティティ クラスは、"永続化非依存" とも言われます。

逆リレーションシップ

product.Category と category.Product のように、リレーションシップの反対側。

自律追跡エンティティ

N 層開発に役立つコード生成テンプレートから構築されたエンティティ。

Table-Per-Concrete type (TPC)

階層内の各非抽象型がデータベースの個別のテーブルにマップされる、継承のマッピングの方法。

Table-Per-Hierarchy (TPH)

階層内のすべての型がデータベースの同じテーブルにマップされる、継承のマッピングの方法。 識別子列は、各行が関連付けられている型を識別するために使用されます。

Table-Per-Type (TPT)

階層内のすべての型の共通プロパティはデータベースの同じテーブルにマップされ、各型に固有のプロパティは別のテーブルにマップされる、継承のマッピングの方法。

型の検出

Entity Framework モデルの一部である必要がある型を特定するプロセス。