ADO.NET Entity Framework 如何:通过每种类型多个实体集定义模型(实体框架)
时间:2010-12-29 来源:悟道2010
请注意,仅当基础数据库表具有相同结构时才应实现 MEST。
定义 MEST 模型的基本步骤如下:
-
使用多个 EntitySet 元素(每个元素具有相同的 EntityType 特性值)来在概念模型中为给定类型定义多个实体集。
-
使用映射规范语言 (MSL) 将每个实体集映射到适当的表。有关更多信息,请参见 EntitySetMapping 元素 (MSL)。
下面的示例假定您已经安装了下面的示例数据库:
该示例还假定您已经将项目配置为使用。有关更多信息,请参见 配置实体框架(实体框架任务)。
创建存储模型
-
将下面的 XML 文件添加到您的项目中并将其命名为 MEST.ssdl。
- 或 -
将一个空的 .edmx 文件 ( MEST.edmx) 添加到您的项目中,并用下面的 XML 文件中的 Schema 元素替换 edmx:StorageModels 元素下的 Schema 元素。 有关更多信息,请参见 如何:创建新的 .edmx 文件(实体数据模型工具)和 .edmx 文件概述(实体框架)。
请注意,存储模型中的表具有相同结构。
创建概念模型
-
将下面的 XML 文件添加到您的项目中并将其命名为 MEST.csdl。
- 或 -
在 .edmx 文件中,用下面的 XML 文件中的 Schema 元素替换 edmx:ConceptualModels 元素中的 Schema 元素。
请注意,已为 Course 实体类型定义了两个实体集。
定义概念模型与存储模型之间的映射
-
将下面的 XML 文件添加到您的项目中并将其命名为 MEST.msl。
- 或 -
在 .edmx 文件中,用下面的 XML 文件中的 Mapping 元素替换 edmx:Mappings 元素中的 Mapping 元素。
请注意,每个实体集分别映射到适当的基础数据库。