我有此代码通常可以正常工作:

db.myTable.DeleteObject(myCurrent);

我得到了这个错误:
The object cannot be deleted because it was not found in the ObjectStateManager.

数据库的表中包含相同的成分。

我尝试了这个:
db.myTable.Attach(myCurrent);
db.myTable.DeleteObject(myCurrent);

我又遇到了一个错误:
An entity object cannot be referenced by multiple instances of IEntityChangeTracker.

如何解决这个问题?

最佳答案

问题是您不能删除(或删除)分离的实体,也不能两次附加实体。您需要类似下面的内容。

var entry = db.Entry(myCurrent);
if (entry.State == EntityState.Detached)
    db.myTable.Attach(myCurrent);
db.myTable.Remove(myCurrent);

关于c# - 无法删除该对象,因为在ObjectStateManager中找不到该对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15945172/

10-13 08:31