Entity Framework 术语表

Code First

使用代码创建 Entity Framework 模型。 模型可以面向现有数据库或新数据库。

上下文

表示数据库中的会话的类,可查询和保存数据。 上下文派生自 DbContext 或 ObjectContext 类。

约定 (Code First)

Entity Framework 用于根据类推理模型的形状的规则。

Database First

使用 EF Designer 创建面向现有数据库的 Entity Framework 模型。

预先加载

加载相关数据的模式,在该模式中对某一种实体进行查询时还会加载相关实体。

EF 设计器

Visual Studio 中的可视化设计器,可使用框和线创建 Entity Framework 模型。

实体

表示客户、产品和订单等应用程序数据的类或对象。

实体数据模型

描述实体及其之间的关系的模型。 EF 使用 EDM 来说明开发人员编程所依据的概念模型。 EDM 基于 Peter Chen 博士引入的实体关系模型。 EDM 最初主要是作为 Microsoft 开发人员和服务器技术套件中的通用数据模型而开发的。 EDM 也是 OData 协议的一部分。

显式加载

加载相关数据的模式,在该模式中通过调用 API 来加载相关对象。

Fluent API

可用于配置 Code First 模型的 API。

外键关联

实体之间的关联,其中表示外键的属性包含在依赖实体的类中。 例如,Product 包含 CategoryId 属性。

标识关系

一种关系,其中主体实体的主键是依赖实体的主键的一部分。 在这种关系中,没有主体实体,依赖实体就不能存在。

独立关联

实体之间的关联,其中依赖实体的类中没有表示外键的属性。 例如,Product 类包含与 Category 的关系,但不包含 CategoryId 属性。 Entity Framework 跟踪关联的状态,且不考虑两个关联端的实体的状态。

延迟加载

加载相关数据的模式,在该模式中访问导航属性时自动加载相关对象。

Model First

使用 EF Designer 创建 Entity Framework 模型,然后用于创建新数据库。

引用另一个实体的实体的属性。 例如,Product 包含 Category 导航属性,Category 包含 Product 导航属性。

POCO

纯旧式 CLR 对象的首字母缩写。 与任何框架都没有依赖关系的简单用户类。 在 EF 的上下文中,不是派生自 EntityObject 的实体类可实现任意接口或具有 EF 中定义的任意属性。 此类从永久性框架中解耦出的实体类也称为“永久性无知”。

关系逆反

关系的另一端,例如 product.Category 与 category.Product。

自跟踪实体

从代码生成模板构建的实体,有助于 N 层开发。

每个具体类型一张表 (TPC)

映射继承的方法,在该方法中层次结构中的每个非抽象类型都映射到数据库中的独立表。

每个层次结构一个表 (TPH)

映射继承的方法,在该方法中层次结构中的所有类型都映射到数据库中的同一个表。 鉴别器列用于标识每行与哪个类型相关联。

每个类型一个表 (TPT)

映射继承的方法,在该方法中层次结构中所有类型的公共属性都映射到数据库中的同一个表,但每个类型独有的属性映射到单独的表。

类型发现

识别应属于 Entity Framework 模型的类型的过程。