实体框架中的数据建模

实体数据模型 (EDM) 是一种实体关系模型。EDM 以与语言无关的格式定义数据,这种格式不受编程语言或关系数据库的结构所约束。EDM 架构用于指定实体和关系的详细信息并将它们作为数据结构实现。

实体是应用程序域中必须由数据表示的内容。可以在典型的业务 (LOB) 应用程序中找到实体和关系的实例。LOB 应用程序的域中的实体可能包括客户、订单、订单行、供应商、产品、销售人员、发货人、发票等等。EDM EntityType 是在应用程序域中表示实体的数据类型的规范。

关系是实体之间的逻辑连接:例如,商品订单与发出此订单的客户之间的逻辑连接。由于一个客户可能具有许多关联的订单,因此,某个客户与该客户的订单之间的关系可能是一对多关系。产品和供应商可能具有多对多关系。

定义实体和关系可能是一个非常复杂的过程。LOB 应用程序中类似于商品订单的基本内容需要极其大量的详细信息。例如,商品订单可能具有多种形式。其中可能包括商店订单、电话订单、Internet 订单和产品目录订单。在 EDM 中,用 XML 语法在概念上指定每种订单类型的详细信息。每种订单类型的属性和任何必需的约束将传播到相关的应用程序中(这些应用程序使用在此概念架构基础之上生成的数据)。

EDM 通过使用两种基本类型对实体及其关系进行建模。

  • EntityType:应用程序域中数据结构的详细信息的抽象规范。

  • AssociationType:类型之间的逻辑连接。

EDM 设计架构在应用程序域中定义实体的结构、语义、约束和关系。在对象服务的 EDM 实现中,概念架构映射到包含描述存储模型(通常是数据库中的表)的元数据的另一个架构。概念架构用于生成将在应用程序代码中使用的可编程对象模型的类。此外,实体框架 也使用此概念架构和存储架构在运行时验证、查询和更新应用程序数据。

本节内容

另请参见

概念

实现实体 (EDM)
实现关联 (EDM)
Entity SQL 语言

其他资源

EDM 规范
示例应用程序(实体框架)