[英]How to create a database query with LINQ to erase rows by having a list of ID's and by avoiding loops
您可以使用实体框架扩展来做到这一点。 就像是:
this.Container.Devices.Delete(
o => o.Id == 1,
o => o.Id == 2
);
这样的事情可能会有所帮助,但是,如果表太大(百万),Linq to sql将锁定表。 同样,对于每个实体,它也会发出一个T-SQL Delete语句来删除该实体。
public void DeleteContents(List<int> entityIds)
{
using (Yourcontext db = new Yourcontext())
{
IQueryable<ContentTable> contents = db.ContentTable.Where((x) => ids.Contains(x.EntityId));
db.ProductComplianceRules.DeleteAllOnSubmit(contents);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.