Entity Framework 是如何工作的
在这里,你将看到 Entity Framework 是如何工作的概述。
Entity Framework API (EF6 和 EF Core)包括几个功能:①将领域类映射到数据库,②将 LINQ 查询转换为 SQL 并执行,③跟踪实体在其生命周期内发生的更改,并将这些更改保存到数据库。
Entity Data Model(实体数据模型)
EF API 的首要任务是构建实体数据模型(EDM)。EDM 是整个元数据的内存表示:概念模型,存储模型以及它们之间的映射。
概念模型 :EF 从你的领域类、上下文类、遵循领域类和配置的默认规约构建概念模型。
存储模型 :EF 为底层数据库模式构建存储模型。在 Code First 模式中,将从概念模型中构建出来。在 Database First 模式中,将从目标数据库中构建出来。
映射:EF 包括有关概念模型如何映射到数据库模式(存储模型)的映射信息。
EF 使用 EDM 执行 CRUD 操作。它使用 EDM 从 LINQ 查询构建 SQL 查询,构建 INSERT,UPDATE 和 DELETE 命令,并将数据库结果转换为实体对象。
查询
EF API 使用 EDM 将 LINQ to Entities 查询转换为关系数据库的 SQL 查询,并将结果转换回实体对象。
保存
在调用 SaveChanges()
方法时,EF API 根据实体的状态选择 INSERT、UPDATE 和 DELETE 命令。ChangeTrack 会在执行操作时跟踪每个实体的状态。