zoukankan      html  css  js  c++  java
  • Entity Framework入门教程(2)---EF工作流程

    EF工作流程

    1.EF基本CRUD流程

    下边的图就可以很清晰地展示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会在执行操作时跟踪每个实体的状态。

    EF系列目录链接:Entity Franmework系列教程汇总

  • 相关阅读:
    objectMediator
    vi
    string regex
    ar
    widget class in class
    Makefile 语法分析 第三部分
    在Makefile中的 ".PHONY "是做什么的?
    】openssl移植Android使用及其相关经验分享
    精品Android源码推荐,看了绝不后悔
    Makefile 语法分析 第三部分
  • 原文地址:https://www.cnblogs.com/wyy1234/p/9626082.html
Copyright © 2011-2022 走看看