每天学一点,每天积累一点,进步就不止一点点!PS:好记性不如烂笔头,学会总结,学会思考~~~ ----要飞翔,必须靠自己!

灰太狼的梦想

好记性不如烂笔头,学会总结,学会思考~~~

3.翻译:EF基础系列--EF怎么工作的?

          原文链接:http://www.entityframeworktutorial.net/basics/how-entity-framework-works.aspx

这里,你将会大概了解到EF是怎么工作的。

Entity Framework API(EF 6和EF Core),可以将领域类映射到数据库中、将LINQ 语句转化为SQL、在实体整个生命周期内,跟踪实体的改变,并且保存改变到数据库中。

 

实体数据模型(Entity Data Model)

EF API 的首要任务就是构建实体数据模型。实体数据模型是整个元数据的在内存中的呈现:概念模型(Conceptual Model)、存储模型(Storage Model)以及两者之间的映射。

 

Conceptual Model(概念模型):EF从领域类中生成概念模型、上下文类、领域类中默认的约定以及其他配置。

Storage Model(存储模型):EF 根据数据库生成存储模型。在Code-First方式中,这个会从概念模型上推断出来。在DB-First方式中,这个会从目标数据库中推断出来。

Mapping(映射):EF包含概念模型怎么转化到数据库(存储模型)中的映射信息。

 

EF使用实体数据模型(EDM)来进行增删查改操作、使用EDM来从LINQ查询中生成SQL、生成增删查改的指令,然后把数据库返回的结果,转化到实体对象中。

 

Querying【查询】

EF API使用EDM将 LINQ-to-Entities的查询语句转化为SQL语句,发送数据库执行,然后同样将数据库返回的结果转化到实体对象中。

 

Saving【保存】

当SaveChanges方法被调用的时候,EF API基于实体的状态,推断是执行增删查改的哪个操作。只要SavaChanges方法被执行了,变更追踪特性就会保持追踪每个实体的状态。

 

好了,EF的基础系列,第三篇就介绍完了。有不明白的可以留言,谢谢支持。

附录:

EF 6官方文档:  https://docs.microsoft.com/zh-cn/ef/ef6/

EF Core官方文档:https://docs.microsoft.com/zh-cn/ef/core/

 

posted @ 2019-03-24 17:14  灰太狼的梦想  阅读(566)  评论(0编辑  收藏  举报