我想知道是否有一种使用Entities Framework 4进行批量删除或删除多行的好方法。我无法找到一个DeleteAll命令。唯一可用的是DeleteObject(),它只占用一个实体,我想在实体列表上执行删除。有没有比通过列表循环更好的方法?我确实看到一篇文章使用了ExecuteStoreQuery并创建了一些可以执行删除的sql。有没有比执行这两个选项更好的方法请告知执行此操作的最佳方法。
答案 0 :(得分:3)
目前还没有一种优雅的方式来做到这一点。你是对的,你必须在列表中循环。
这篇SO帖子对这个主题进行了一些很好的讨论: How do I delete multiple rows in Entity Framework (without foreach)
答案 1 :(得分:-2)
我知道这篇文章有点陈旧,但代码示例如下:
foreach(var item in items)
{
context.Remove(item);
}