首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ObjectStateManager与分离实体状态

ObjectStateManager与分离实体状态
EN

Stack Overflow用户
提问于 2011-11-14 12:07:17
回答 1查看 2.6K关注 0票数 0

我使用的是实体框架( Entity ),它的某些功能对我来说还不清楚。很难理解的主要事情是:

  • SubmitChanges进程;调用更新的
  • 顺序-删除-插入ObjectStateManager
  • Detached EntityState及其在提交过程中的一部分;

提供您的解释或提供一些有用的链接。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-14 13:25:53

ObjectStateManager是一个公开有关跟踪实体的信息的组件。每个可以被EF持久化的实体都必须被跟踪=附加。分离的实体不为EF所知(不跟踪它们),因此在调用SaveChanges时不会保存它们的更改(EF中没有SubmitChanges )。跟踪包括维护有关实体或关系的初始状态以及对其所做的更改的信息。它还包含实体的全局状态。

调用SaveChanges的过程取决于您如何配置EF以跟踪更改,取决于如何获得实体以及所做的更改。

更改跟踪是一个功能,它允许EF跟踪应用于附加到上下文的实体上的更改(在默认情况下,由查询加载的每个实体都是附加的)。EF包含更改跟踪的版本:

  • 快照--仅供POCOs使用。EF不跟踪对实体的更改,但是当您调用SaveChanges时,它会比较实体的存储状态(在加载实体时获得)和实体中的当前数据,并相应地设置其状态。
  • Dynamic -本机用于基于EntityObject的实体,并由POCOs的动态代理实现。对附加实体的每次更改都会触发跟踪条目中的更改,并相应地设置实体状态。当您调用SaveChanges时,已经设置了状态。

数据修改操作的顺序是EF内部实现。基本顺序是通过映射定义的,其中描述了实体之间的依赖关系。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8121327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档