EF6.0 更新数据的问题?

DbContext.Set().Attach(entity);
DbContext.Entry(entity).State = System.Data.Entity.EntityState.Modified;
DbContext.SaveChanges()

以上是EF6.0 更新数据的写法,但是我发现这样写entity中为空的属性会更新到数据中。
比如entity中我赋值了name属性和id属性(本来就是要跟新name属性)但是这样写ef会把除开id和name 属性的其他字段更新为空。

3个回答

你的entity是new出来的么?
你应该先用
eneity = DbContext.表.Single(x => x.id = xxx);查询出来,然后再更新字段。

在查询的时候你试试不要全部查询,查询表中的指定列就行,然后再执行修改。

eneity = DbContext.表.Single(x => x.id = xxx);

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐