Entity Data Model の型

エンティティ データ モデル (EDM) は、エンティティのスキーマ宣言についての基本的な構造を提供します。EDM の EntityType は、最上位のアプリケーション概念に対して定義される基本的な型です。アプリケーションに対して明示的に設計されたエンティティは、EDM の EntityType から派生します。

EDM では、エンティティが概念スキーマ定義言語 (CSDL) で定義されます。この定義によって、Entity SQL または厳密に型指定された CLR 言語を使用する際の型チェックが可能になります。厳密に型指定された言語には、次のような特徴があります。

  • 型の規則が例外なく厳密に適用されます。

  • すべての型がコンパイル時に認識されます。

  • 適用されているすべての型変換が予測可能になります。

EDM の型システムは、次の 3 つの点から、動作ベースではなく構造ベースの型システムといえます。

  • EDM 型はカプセル化されません。

  • EDM 型にはメソッドが関連付けられていません。

  • EDM では、構造的な継承はサポートされますが、動作上の継承はサポートされません。

部分クラスでのメソッドの実装については、「ヘルパ メソッド (EDM)」を参照してください。

概念スキーマ定義言語 (CSDL)

CSDL は、エンティティ フレームワーク のインストール時に提供される EDM 型と、開発者によって設計される型の両方を定義する目的で使用される XML 構文です。CSDL は、クラスを定義するために使用される C# のサブセット、または、SQL のデータ定義言語 (DDL) のサブセットのようなものと考えることができます。CSDL の構文は、XML で表現されますが、XSD ベースではありません。

次のトピックでは、CSDL で定義される基本的な型とスキーマについて説明します。

このセクションのトピック

  • 単純型 (EDM)
    エンティティおよび複合型のプロパティの値として割り当てられるプリミティブ データ型について説明します。
  • 複合型 (EDM)
    ComplexType の使用方法および使用例を紹介します。
  • 型の制約 (EDM)
    データ型およびプロパティに対する各種制約の仕様について説明します。

参照

概念

Entity Data Model
Entity Data Model のリレーションシップ
EDM 型の分類

その他のリソース

スキーマおよびマッピング スキーマ (Entity Framework)