4

我有两张桌子Productuser。现在,我想一次删除多个记录,关系如下:我想删除与特定用户相关的所有产品。

我在 linq2db 模板中删除了多个记录代码

using (var db = new DbNorthwind())
{
  db.Product
  .Where(p => p.Discontinued)
  .Delete();
}

但是,如何将该用户表与此代码相关联?

来源:https ://linq2db.github.io/#delete

4

2 回答 2

6

您可以使用以下解决方案在基于两个表的 linq2db 模板中使用 LINQ 删除多行:

(
    from p in db.Product
    join u in db.User on ... some join ...
    select p
)
.Delete();
于 2018-09-27T22:53:51.403 回答
0

尝试这个:

using (var db = new DbNorthwind())
{
  var deletionList=db.Product
                     .Where(p => p.Discontinued).AsEnumerable();
  db.Product.RemoveRange(deletionList);
  db.SaveChanges();
}
于 2018-09-26T17:24:44.600 回答