嘿所有人我正在使用此代码删除表中的多个记录。但它给了我一个错误。
"无法删除该对象,因为在该对象中找不到该对象 ObjectStateManager"
我是EF新手,请帮助我解释代码中的错误。
listOfEntities =我想从表中删除的记录列表
U =它是一个类型实体
using (var db = new DMContext())
{
db.SaveChanges();
}
答案 0 :(得分:1)
这意味着该实体未附加。你可以试试这个
using (var db = new DMContext())
{
db.YourTableEntity.Attach(EntityToRemove);
db.YourTableEntity.Remove(EntityToRemove);
db.SaveChanges();
}
您无法删除已分离的实体,因此您需要先粘贴它们,然后才能将其删除。
删除多条记录
foreach (var entity in entities)
{
Set<T>().Attach(entity);
Set<T>().Remove(entity);
}
SaveChanges();