实体框架 – 数据模型

实体框架 – 数据模型


实体数据模型 (EDM) 是实体关系模型的扩展版本,它使用各种建模技术指定数据的概念模型。它也指一组描述数据结构的概念,无论其存储形式如何。

EDM 支持一组在概念模型中定义属性的原始数据类型。我们需要考虑构成实体框架基础的 3 个核心部分,统称为实体数据模型。以下是 EDM 的三个核心部分。

  • 存储模式模型
  • 概念模型
  • 映射模型

存储模式模型

存储模型也称为存储架构定义层 (SSDL),表示后端数据存储的示意图。

电火花加工

概念模型

概念模型也称为概念架构定义层 (CSDL) 是真正的实体模型,我们根据它编写查询。

映射模型

映射层只是概念模型和存储模型之间的映射。

逻辑模式及其与物理模式的映射表示为 EDM。

  • Visual Studio 还提供实体设计器,用于可视化创建 EDM 和映射规范。

  • 该工具的输出是指定架构和映射的 XML 文件 (*.edmx)。

  • Edmx 文件包含实体框架元数据工件。

模式定义语言

ADO.NET 实体框架使用称为架构定义语言 (SDL) 的基于 XML 的数据定义语言来定义 EDM 架构。

  • SDL 定义了与其他基本类型类似的简单类型,包括 String、Int32、Double、Decimal 和 DateTime 等。

  • 定义原始值和名称映射的枚举也被视为简单类型。

  • 仅从框架版本 5.0 开始支持枚举。

  • 复杂类型是从其他类型的聚合中创建的。这些类型的属性集合定义了一个实体类型。

数据模型主要有三个关键概念来描述数据结构 –

  • 实体类型
  • 关联类型
  • 财产

实体类型

实体类型是在 EDM 中描述数据结构的基本构建块。

  • 在概念模型中,实体类型由属性构建并描述顶级概念的结构,例如业务应用程序中的学生和注册。

  • 实体代表特定对象,例如特定学生或注册。

  • 每个实体在实体集中必须具有唯一的实体键。实体集是特定实体类型的实例的集合。实体集(和关联集)在实体容器中按逻辑分组。

  • 实体类型支持继承,即一种实体类型可以派生自另一种实体类型。

实体类型

关联类型

它是在 EDM 中描述关系的另一个基本构建块。在概念模型中,关联表示两个实体类型(例如 Student 和 Enrollment)之间的关系。

  • 每个关联都有两个关联端,用于指定关联中涉及的实体类型。

  • 每个关联端还指定一个关联端多重性,指示可以在关联端的实体数量。

  • 关联端多重性的值可以是一 (1)、零或一 (0..1) 或多 (*)。

  • 关联一端的实体可以通过导航属性访问,或者如果它们在实体类型上公开,则可以通过外键访问。

财产

实体类型包含定义其结构和特征的属性。例如,学生实体类型可能具有学生 ID、姓名等属性。

属性可以包含原始数据(例如字符串、整数或布尔值)或结构化数据(例如复杂类型)。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁