EF工作流程简介

EF工作流程                                                               

1.EF基本CRUD流程                                                                               

crud是指在做计算处理时的增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写。

EF的CRUD操作的基本工作流程如下图所示:

EF CRUD操作总结:

1.定义模型:这是EF工作的前提,定义模型包括定义领域类(Domain Classes),派生自DbContext的上下文类Configuration(如果有的话)。EF将通过模型来执行CRUD操作。
2.添加数据:将领域对象添加到上下文并调用SaveChanges()方法。EF API将构建适当的INSERT命令并将其执行到数据库。
3.读取数据:执行LINQ-to-Entities查询。EF API会将此查询转换为底层关系数据库的SQL查询并执行,然后将结果转换为实体对象并显示在UI上。
4.编辑或删除数据:从上下文更新或删除实体对象并调用该SaveChanges()方法。EF API将构建适当的UPDATE或DELETE命令并执行。

2.EF的工作过程简析                                                                                                                        

这里将展示EF工作的基本过程
EF API(EF6和EF Core)包括几个功能:①将领域类映射到数据库,②将LINQ查询转换为SQL并执行,③跟踪实体在其生命周期内发生的更改,并将这些更改保存到数据库。

实体数据模型(Entity Data Model)

EF API的首要任务是构建实体数据模型(EDM)。EDM是整个元数据的内存表示,包含:概念模型,存储模型以及它们之间的映射

概念模型: EF通过领域类,上下文类,默认约定和配置构建概念模型。

存储模型: EF为底层数据库架构构建存储模型。在代码优先方法中,根据概念模型进行推断来构建。在数据库优先模式中,根据目标数据库进行推断来构建。

映射: EF包括的映射信息,表示概念模型是如何映射到数据库架构(存储模型)。

查询

EF API使用EDM将LINQ-to-Entities查询转换为SQL查询,并将结果转换回实体对象。

保存

EF API在调用SaveChanges()方法时根据实体的状态推断INSERT,UPDATE和DELETE命令。ChangeTrack会在执行操作时跟踪每个实体的状态。

猜你喜欢

转载自www.cnblogs.com/zxwDont/p/11096091.html