如何在基于两个表的linq2db模板中使用LINQ删除多行?
我有两个表如何在基于两个表的linq2db模板中使用LINQ删除多行?,linq,linq2db,Linq,Linq2db,我有两个表Product和user。现在,我想一次删除多个记录,其关系如下:我想删除与特定用户相关的所有产品 我已经删除了linq2db模板中的多个记录代码 using (var db = new DbNorthwind()) { db.Product .Where(p => p.Discontinued) .Delete(); } 但是,如何将该用户表与此代码关联 来源:试试这个: using (var db = new DbNorthwind()) { var del
Product
和user
。现在,我想一次删除多个记录,其关系如下:我想删除与特定用户相关的所有产品
我已经删除了linq2db模板中的多个记录代码
using (var db = new DbNorthwind())
{
db.Product
.Where(p => p.Discontinued)
.Delete();
}
但是,如何将该用户表与此代码关联
来源:试试这个:
using (var db = new DbNorthwind())
{
var deletionList=db.Product
.Where(p => p.Discontinued).AsEnumerable();
db.Product.RemoveRange(deletionList);
db.SaveChanges();
}
您可以使用以下解决方案基于两个表使用linq2db模板中的LINQ删除多行:
(
from p in db.Product
join u in db.User on ... some join ...
select p
)
.Delete();
但是,我认为它正在删除所有的行,而不是使用foreach。