实体框架术语

本主题定义实体框架文档中经常提到的术语。 如果有其他可用信息,则会提供指向相关主题的链接。

术语 定义
关联 实体类型之间的关系的定义。

有关详细信息,请参阅 Association 元素 (CSDL)关联类型
Association Set — 关联集 包含同一类型关联实例的逻辑容器。

有关详细信息,请参阅 AssociationSet 元素 (CSDL)关联集
Code First 从 实体框架4.1 开始,可使用 Code First 开发以编程方式创建模型。 对于 Code First 开发,有两种不同的方案。 在两种情况下,开发人员通过对 .NET Framework 类定义进行编码来定义模型,然后可选择使用数据注释或 fluent API 指定其他映射或配置。

请注意,Code First 开发是 实体框架5.0 的一部分。 实体框架 5.0 不是 .NET Framework 的一部分,但它是基于 .NET Framework 4.5 构建的。 实体框架 5.0 是以实体框架 NuGet 包的形式提供的。 有关详细信息,请参阅以前的实体框架版本
Command Tree — 命令目录树 由一个或多个表达式组成的所有实体框架查询的一种常见编程表示形式。

有关详细信息,请参阅实体框架概述
Complex Type — 复杂类型 一种 .NET Framework 类,表示概念模型中定义的复杂属性。 通过复杂类型,可以在实体中组织标量属性。 复杂对象是复杂类型的实例。 有关详细信息,请参阅 ComplexType 元素 (CSDL)复杂类型
ComplexType 数据类型的规范,表示没有键属性的实体类型的非标量属性。

有关详细信息,请参阅 ComplexType 元素 (CSDL)复杂类型
Conceptual Model — 概念模型 实体框架内应用程序域中的实体类型、复杂类型、关联、实体容器、实体集和关联集的抽象规范。 概念模型在 .csdl 文件中采用 CSDL 定义。

有关详细信息,请参阅建模和映射
.csdl 文件 一种 XML 文件,该文件包含以 CSDL 表示的概念模型。
概念性架构定义语言 (CSDL) 一种基于 XML 的语言,可用于定义概念模型的实体类型、关联、实体容器、实体集和关联集。

有关详细信息,请参阅 CSDL Specification
container 实体集和关联集的逻辑分组。

有关详细信息,请参阅 EntityContainer 元素 (CSDL)实体容器
concurrency 使多个用户能够同时访问和更改共享数据的进程。 默认情况下,实体框架实现乐观并发模型。
direction 指某些关联的非对称性。 方向是通过架构中的 FromRoleToRole 元素的 NavigationPropertyReferentialConstraint 属性指定的。

有关详细信息,请参阅 NavigationProperty 元素 (CSDL)导航属性
预先加载 (eager loading) 加载特定相关对象集以及在查询中显式请求的对象的过程。
.edmx 文件 一种 XML 文件,该文件包含概念模型(以 CSDL 表示)、存储模型(以 SSDL 表示)以及这两个模型之间的映射(以 MSL 表示)。 .edmx 文件由实体数据模型工具创建。 有关详细信息,请参阅 .edmx 文件概述
end 参与关联的实体。

有关详细信息,请参阅 End 元素 (CSDL)关联结束
实体 应用程序域中的概念,数据类型是根据实体定义的。

有关详细信息,请参阅 EntityType 元素 (CSDL)实体类型
EntityClient 一个与存储无关的 ADO.NET 数据提供程序,其中包含 EntityConnectionEntityCommandEntityDataReader 等类。 使用实体 SQL 并连接到特定于存储的 ADO.NET 数据提供程序,例如 SqlClient

有关详细信息,请参阅 用于 Entity Framework 的 EntityClient 提供程序
Entity Container — 实体容器 用于指定将在指定的命名空间中实现的实体集和关联集。

有关详细信息,请参阅 EntityContainer 元素 (CSDL)实体容器
实体数据模型 (EDM) 以实体和关系来描述数据结构(不考虑其存储形式)的一组概念。

有关详细信息,请参阅实体数据模型
Entity Framework 一套支持开发面向数据的软件应用程序的技术,这些技术使开发人员能够处理映射到数据源中的逻辑架构的概念模型。

有关详细信息,请参阅实体框架概述
实体集 一种逻辑容器,包含给定类型及其子类型的实体。 实体集映射到数据库中的表。

有关详细信息,请参阅 EntitySet 元素 (CSDL)实体集
Entity SQL 一种与存储无关的 SQL 方言,它可直接处理概念实体架构,并支持概念模型概念(如继承和关系)。

有关详细信息,请参阅实体 SQL 语言
Entity Type — 实体类型 一个 .NET Framework 类,表示概念模型中定义的实体。 实体类型可以具有标量属性、复杂属性和导航属性。 对象是实体类型的实例。 有关详细信息,请参阅使用对象
EntityType 数据类型的规范,它包含一个键和一个命名属性集,表示概念模型或存储模型中的顶级项。

有关详细信息,请参阅 EntityType 元素 (CSDL)实体类型
显式加载 (Explicit Loading) 当查询返回对象时,不会同时加载相关对象。 默认情况下,只有对导航属性使用 Load 方法显式请求时才会加载相关对象。
外键关联 (foreign key association) 实体之间的关联,通过外键属性进行管理。
识别关系 (identifying relationship) 一种关系,其中主体实体的主键是依赖实体的主键的一部分。 在这种关系中,没有主体实体,依赖实体就不能存在。
独立关联 (independent association) 实体之间的关联,由独立对象表示和跟踪。
key 实体类型的属性 (Attribute),用于指定使用哪个属性 (Property) 或属性 (Property) 集标识实体类型的唯一实例。 在对象层中由 EntityKey 类表示。

有关详细信息,请参阅 Key 元素 (CSDL)实体键
延迟加载 (lazy loading) 当查询返回对象时,不会同时加载相关对象。 但在访问导航属性时,会自动加载相关对象。
LINQ to Entities 用于定义一组查询运算符的查询语法,通过这些运算符,可以在 Visual C# 和 Visual Basic 中以直接的声明性方式表示遍历、筛选和投影操作。

有关详细信息,请参阅 LINQ to Entities
mapping 概念模型与存储模型中的项之间的对应规范。

有关详细信息,请参阅 MSL 规范
.msl 文件 一种 XML 文件,该文件以 MSL 表示,包含概念模型与存储模型之间的映射。
映射规范语言 (MSL) 一种基于 XML 的语言,可用于将概念模型中定义的项映射到存储模型中的项。

有关详细信息,请参阅 MSL 规范
Modification Functions — 修改函数 用于插入、更新和删除数据源中的数据的存储过程。 这些函数可用于取代实体框架生成的命令。 修改函数是由存储模型中的 Function 元素定义的。 ModificationFunctionMapping 元素将这些修改函数映射到对概念模型中定义的实体执行的插入、更新和删除操作。
重数 关系每一方可以存在的实体数量,由关联进行定义。 也称为基数。

有关详细信息,请参阅 End 元素 (CSDL)关联结束
Multiple Entity Sets Per Type — 每种类型多个实体集 在多个实体集中定义一个实体类型的功能。

有关详细信息,请参阅 EntitySet 元素 (CSDL)如何:定义具有每个类型多个实体集的模型
Navigation Property — 导航属性 实体类型的属性,表示与其他实体类型的关系,由关联定义。 导航属性用于根据关联另一端的重数返回相关对象,如 EntityCollection<TEntity>EntityReference<TEntity>

有关详细信息,请参阅 NavigationProperty 元素 (CSDL)导航属性
Query Path — 查询路径 路径的字符串表示形式,用于指定执行对象查询时要返回的相关对象。 查询路径是通过调用 IncludeObjectQuery<T> 方法定义的。

有关详细信息,请参阅加载相关对象
对象上下文 表示概念模型中定义的实体容器。 它包含与基础数据源的连接,并提供更改跟踪和标识解析等服务。 对象上下文由 ObjectContextDbContext 类的实例表示。

DbContext 是实体框架 5.0 的一部分。 实体框架 5.0 不是 .NET Framework 的一部分,但它是基于 .NET Framework 4.5 构建的。 实体框架 5.0 是以实体框架 NuGet 包的形式提供的。 有关详细信息,请参阅以前的实体框架版本
对象层 实体框架所使用的实体类型和对象上下文定义。
Object Query — 对象查询 在对象上下文中对数据模型执行的查询,该查询以对象形式返回数据。

有关详细信息,请参阅对象查询
Object-relational Mapping — 对象关系映射 一种技术,用于将关系数据库中的数据转换为可在面向对象的软件应用程序中使用的数据类型。

实体框架通过将存储模型中定义的关系数据映射到概念模型中定义的数据类型来提供对象关系映射服务。

有关详细信息,请参阅建模和映射
Object Services — 对象服务 由实体框架提供的服务,使应用程序代码能够对 .NET Framework 对象等实体运行。
持久性未知对象 一种不包含与数据存储有关的任何逻辑的对象。 也称为 POCO 实体。
POCO 纯旧式 CLR 对象。 一种不从另一个类继承也不实现接口的对象。
POCO 实体 实体框架中的一个实体,它不从 EntityObjectComplexObject 继承,也不实现实体框架接口。 通常,POCO 实体是在实体框架应用程序中使用的现有域对象。 这些实体支持持久性未知。 有关详细信息,请参阅使用 POCO 实体
代理对象 一个从 POCO 类派生的对象,由实体框架生成,以支持更改跟踪和延迟加载。 有关详细信息,请参阅创建 POCO 代理所要满足的要求
Referential Constraint — 引用约束 在概念模型中定义的约束,该约束指示一个实体与另一个实体之间存在依赖关系。 此约束意味着,如果没有对应的主体实体实例,就不会存在依赖性实体的实例。

有关详细信息,请参阅 ReferentialConstraint 元素 (CSDL)引用完整性约束
关系 (relationship) 实体之间的逻辑连接。
role 为关联的每个 End 提供的名称,用于明确关系的语义。

有关详细信息,请参阅 End 元素 (CSDL)关联结束
标量属性 实体的属性,它映射到存储模型中的单个字段。
自跟踪实体 (self-tracking entity) 从文本模板转换工具包 (T4) 中生成的一种实体,该实体可以将更改记录到标量属性、复杂属性以及导航属性中。
Simple Type — 简单类型 一种基元类型,用于定义概念模型中的属性。

有关详细信息,请参阅概念模型类型 (CSDL)实体数据模型:基元数据类型
Split Type — 拆分实体 一种实体类型,它映射到存储模型中的两个不同类型。

有关详细信息,请参阅如何:定义将单个实体映射到两个表的模型
存储模型 受支持的数据源(例如关系数据库)的数据逻辑模型定义。 存储模型在 .ssdl 文件中采用 SSDL 定义。

有关详细信息,请参阅建模和映射SSDL 规范
.ssdl 文件 一种 XML 文件,该文件包含以 SSDL 表示的存储模型。
存储架构定义语言 (SSDL) 一种基于 XML 的语言,用于定义存储模型(常常对应于数据库架构)的实体类型、关联、实体容器、实体集和关联集。

有关详细信息,请参阅 SSDL 规范
每个层次结构一个表 在数据库中对类型层次结构建模的方法,此方法将层次结构中的所有类型的特性包含在一个表中。
每个类型一个表 在数据库中对类型层次结构建模的方法,此方法使用具有一对一关系的多个表来对各种类型建模。

请参阅