我使用的是实体框架( Entity ),它的某些功能对我来说还不清楚。很难理解的主要事情是:
SubmitChanges进程;调用更新的ObjectStateManagerEntityState及其在提交过程中的一部分;提供您的解释或提供一些有用的链接。
发布于 2011-11-14 13:25:53
ObjectStateManager是一个公开有关跟踪实体的信息的组件。每个可以被EF持久化的实体都必须被跟踪=附加。分离的实体不为EF所知(不跟踪它们),因此在调用SaveChanges时不会保存它们的更改(EF中没有SubmitChanges )。跟踪包括维护有关实体或关系的初始状态以及对其所做的更改的信息。它还包含实体的全局状态。
调用SaveChanges的过程取决于您如何配置EF以跟踪更改,取决于如何获得实体以及所做的更改。
更改跟踪是一个功能,它允许EF跟踪应用于附加到上下文的实体上的更改(在默认情况下,由查询加载的每个实体都是附加的)。EF包含更改跟踪的版本:
SaveChanges时,它会比较实体的存储状态(在加载实体时获得)和实体中的当前数据,并相应地设置其状态。SaveChanges时,已经设置了状态。数据修改操作的顺序是EF内部实现。基本顺序是通过映射定义的,其中描述了实体之间的依赖关系。
https://stackoverflow.com/questions/8121327
复制相似问题