码迷,mamicode.com
首页 > 其他好文 > 详细

ef 更新导航属性

时间:2014-12-15 15:23:37      阅读:329      评论:0      收藏:0      [点我收藏+]

标签:style   io   ar   color   sp   on   ad   ef   as   

总之,要让所有的东西,都被DbContext管理状态

1、查出来,改了,再提交

2、new 出来,attach,再改,再提交

以上两种都较好理解

3、new出来,改了,再attach,在改状态,再提交

改状态这里,不是和普通属性一样Property(x=>x.?).IsModify=true,导航属性不能用这样的方式

因为导航属性对应的是一个集合,而状态是要对应到集合里的每个元素具体的状态,而不是集合整个的状态

((IObjectContextAdapter)db).ObjectContext.ObjectStateManager.ChangeRelationshipState(sourceEntity, targetEntity,navigationPropertySelector, relationshipState);
语句略显繁琐
第一个主表的对象
第二是导航属性集合中的某一个具体的对象
第三个是主表对象的导航属性x=>x.属性
最后一个是状态

ef 更新导航属性

标签:style   io   ar   color   sp   on   ad   ef   as   

原文地址:http://www.cnblogs.com/czcz1024/p/4164790.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!