entity-framework - Entity Framework : "Store update, insert, or delete statement affected an unexpected number of rows (0)."

标签 entity-framework

我正在使用 Entity Framework 来填充网格控件。有时,当我进行更新时,我会收到以下错误:

Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries.

我不知道如何重现这个。但这可能与我更新的时间间隔有关。有谁见过这个或者有人知道错误消息指的是什么吗?

编辑:不幸的是,我无法再自由地重现我在这里遇到的问题,因为我离开了这个项目,不记得我最终是否找到了解决方案,是否有其他开发人员修复了它,或者我是否工作过周围。因此我不能接受任何答案。

最佳答案

我遇到了这个问题,这是由于未设置实体的 ID(键)字段引起的。因此,当上下文去保存数据时,它找不到 ID = 0。请务必在更新语句中放置一个断点并验证实体的 ID 是否已设置。

来自保罗·贝洛拉的评论

I had this exact issue, caused by forgetting to include the hidden ID input in the .cshtml edit page

关于entity-framework - Entity Framework : "Store update, insert, or delete statement affected an unexpected number of rows (0).",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1836173/

相关文章:

entity-framework - Entity Framework 4.3迁移可移动现有数据

c# - Entity Framework 、Fluent API 映射,是否应该在 OnModelCreating 以外的地方完成?

entity-framework - 在 LINQ to SQL 查询中使用了 'new' 运算符,但在每个结果中都引用了相同的实例

c# - dbset.Remove(entity) 不工作 在此行出错

c# - 如何使 IEnumerable 和 IQueryable 异步?

sql - Entity Framework : How to select specific fields from a singular Navigation Property?

c# - Database.SqlQuery 和 EF 6.1 之间的性能有什么区别吗?

c# - DbContext 没有被 autofac 注入(inject)

asp.net-mvc - Entity Framework 4.3。无效的列名“CreatedOn”

c# - 卡住 linq IQueryable(就像 ToList().AsQueryable() 会做的那样)