オブジェクトのカスタマイズ (Entity Framework)
ADO.NET Entity Framework には、概念モデルに基づいてオブジェクト レイヤーを自動生成するツールが用意されています。 これらのデータ クラスは、アプリケーションの要件に応じてさまざまなレベルでカスタマイズできます。 独自のカスタム データ クラスデータモデルと一緒にで使用することもできます。 これは、既存のアプリケーションのデータ クラスをアップグレードして Entity Framework を使用する場合や、データ クラスの作成方法を詳細に制御する場合に便利です。
Entity Framework ツールを使用すると、カスタム データ クラスのエンティティ型、複合型、およびプロパティが概念モデルのエンティティ型、複合型、およびプロパティの名前と一致する限り、データ クラス自体は変更せずに、データ モデルでカスタム データ クラスを使用できます。 つまり、ドメイン オブジェクトなどの POCO ("plain-old" CLR object) をデータ モデルで使用できます。 詳細については、「POCO エンティティの使用 (Entity Framework)」を参照してください。
Entity Framework 3.5 SP1 でカスタム オブジェクトを使用した場合は、以下のオプションがありました。
別のソース ファイルでカスタム メソッドとプロパティを使用して、生成された部分クラスを拡張する。
次の Entity Framework インターフェイスを使用して、カスタム クラスとプロパティを、概念モデルで定義されたエンティティにマップする EDM 属性を適用する。
変更の追跡を有効にする IEntityWithChangeTracker インターフェイス。
アソシエーションのあるエンティティに必要な IEntityWithRelationships インターフェイス。
EntityObject 型から派生し、カスタム クラスとカスタム プロパティを概念モデルで定義されているエンティティにマップする EDM 属性を適用する。
Entity Framework バージョン 4 では、Entity Framework インターフェイスの実装と EntityObject 型からの派生がサポートされていますが、POCO クラスを使用するか、生成された部分クラスを拡張することをお勧めします。
このセクションの内容
ビジネス ロジックの定義 (Entity Framework)
POCO エンティティの使用 (Entity Framework)
Entity Framework 生成型の拡張 (Entity Framework)
関連項目
- How to: Customize Object Layer Code Generation (Entity Designer)
Entity Data Model デザイナーとテキスト テンプレートを使用して、オブジェクト レイヤーのコード生成をカスタマイズする方法を説明します。