您的位置:首页 > Web前端

EF 更新Model 报错:Store update, insert, or delete statement affected an unexpected number of rows (0). E...

2020-01-15 05:20 387 查看

1、报错环境

目的 更新 model,   但是更新之前 根据外键 我查询了 是否已经存在:

dbContext.model.Where(d => d.HotelId == hotelId).FirstOrDefault();

如果 存在 就更新, 不存在就Add;

存在 时 去 更新:

dbContext.Entry(model).State = EntityState.Modified;
dbContext.SaveChanges()

此时运行就会报错: Store update, insert, or delete statement affected an unexpected number of rows (0)

 

解决办法:

 dbContext.model.Where(d => d.HotelId == hotelId).FirstOrDefault();

 dbContext.Entry(mod).State = EntityState.Detached;    // 查询完后 dbContext实体 内 已经存在了, 要设置为 detach ,然后再去更新

dbContext.Entry(model).State = EntityState.Modified;
dbContext.SaveChanges()

 

转载于:https://www.cnblogs.com/generalLi/p/6518735.html

  • 点赞
  • 收藏
  • 分享
  • 文章举报
aoshuaihuang9603 发布了0 篇原创文章 · 获赞 0 · 访问量 414 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐