如何在没有循环的情况下删除多个实体?目前,我有:
Dim itemsToDelete As List(Of Item) = (From t In _entities.Item _
Where t.Column = columnValue).ToList
For Each item In itemsToDelete
_entities.DeleteObject(item)
Next
_entities.SaveChanges()
答案 0 :(得分:3)
一个字:不要!
任何典型的ORM - 无论是Linq-to-SQL,NHibernate,Entit Framework还是其他任何一个 - 都非常适合处理单个或几个对象。
不但是为批量处理设计或优化。
如果需要删除数百或数千行:使用直接SQL - 作为临时SQL查询或作为存储过程。这样做会更容易,也更有效率。