首页 > 代码库 > ef 更新导航属性
ef 更新导航属性
总之,要让所有的东西,都被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 更新导航属性
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。