实体框架 - 架构


实体框架的体系结构从下到上由以下部分组成:

数据提供者

这些是特定于源的提供程序,它们在针对概念架构进行编程时抽象 ADO.NET 接口以连接到数据库。

它将常见的 SQL 语言(例如 LINQ)通过命令树转换为本机 SQL 表达式,并针对特定的 DBMS 系统执行它。

实体客户端

该层将实体层暴露给上层。实体客户端使开发人员能够使用实体 SQL 查询来处理行和列形式的实体,而无需生成表示概念模式的类。实体客户端显示实体框架层,这是核心功能。这些层称为实体数据模型。

实体数据模型
  • 存储包含 XML 格式的整个数据库模式。

  • 实体也是一个 XML 文件,定义实体和关系。

  • 映射是一个 XML 文件,它将概念层定义的实体和关系与逻辑层定义的实际关系和表进行映射。

  • 数据服务也体现在实体客户端中,提供集中式 API 来访问存储在实体、映射和存储层的元数据。

对象服务

对象服务层是对象上下文,它代表应用程序和数据源之间交互的会话。

  • 对象上下文的主要用途是执行不同的操作,例如添加、删除实体实例,以及借助查询将更改的状态保存回数据库。

  • 它是实体框架的ORM层,将数据结果表示为实体的对象实例。

  • 该服务允许开发人员通过使用 LINQ 和 Entity SQL 编写查询来使用一些丰富的 ORM 功能,例如主键映射、更改跟踪等。