zoukankan      html  css  js  c++  java
  • 10.翻译:EF基础系列---EF中的持久性

    原文链接:http://www.entityframeworktutorial.net/EntityFramework4.3/persistence-in-entity-framework.aspx

    大家好,这一篇就是我们EF基础系列的最后一篇了,EF基础系列主要讲解的就是EF的一些基础理论知识,方便大家继续后面的学习。

    使用EF有两种情况持久化数据到数据库中:一种是the Connected Scenario【连接模式】,另外一种是the Disconnected Scenario【断开模式】。

    先看看连接模式吧

    在连接模式中,使用同一个上下文类的实例,来获取或者保存数据。在连接模式中,在实体的生命周期中,EF跟踪所有的实体。连接模式在Windows应用程序中比较有用。

    连接模式的优点:

    1. 处理操作快
    2. 上下文类跟踪所有的实体状态,然后当实体发生改变的时候,自动的给实体设置相应的状态。

    连接模式的缺点:

    1. 上下文类始终是活跃的,所以数据库的连接始终是打开的。
    2. 需要占用更多的资源

    好了,我们再看看断开模式吧

    在断开模式中,不同的上下文类的实例,被用来从数据库获取数据或者保存数据到数据库中。检索数据之后,其中一个上下文就被销毁了,然后创建一个新的上下文实例,将数据保存到数据库。

    断开模式有点复杂,因为上下文类的实例不再追踪实体状态了,所以你必须在每次调用SaveChanges方法之前,给每个实体设置好合适的实体状态。在上面的图中,使用Context1获取数据,然后使用Context2,作增删查改操作。Context2并不知道,实体之前有什么操作。

    断开模式在Web 应用程序中很有用,或者使用远程数据库的程序中也很方便。

    断开模式的优点:

    1. 占用更少的资源,相比连接模式来说
    2. 数据库连接不用打开

    断开模式的缺点

    1. 需要在每次保存的时候,设置实体到合适的状态
    2. 操作速度要比连接模式稍微慢点

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

    附录:

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

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

  • 相关阅读:
    JZOJ5906 传送门
    JZOJ5907 轻功
    JZOJ5904 刺客信条
    JZOJ5347 遥远的金字塔
    JZOJ5344 摘果子
    JZOJ4742 单峰
    JZOJ4725 质数序列
    JZOJ2499 东风谷早苗
    JZOJ4737 金色丝线将瞬间一分为二
    最后的财产——模板大全
  • 原文地址:https://www.cnblogs.com/caofangsheng/p/10617635.html
Copyright © 2011-2022 走看看