我有一個使用linq刪除查詢下面的代碼。但它感覺像一個很長的方法?有沒有其他方法可以做到這一點?在LINQ中更短的刪除查詢
var ListOfData = (from a in db.Table1
join b in db.Table2 on a.Table1Id equals b.Table2Id
where a.Table1Id == (param) select a)
.ToList();
foreach(var item in ListOfData)
{
var DelRecord = (from a in db.Table1
join b in db.Table2 on a.Table1Id equals b.Table2Id
where a.Table1Id == item.TableId select a)
.FirstOrDefault();
db.Table1.DeleteObject(DelRecord);
db.SaveChanges();
}
爲什麼你沒有創建適當的實體?如果它們是可連接的,那麼可以在Entity對象中創建一個鏈接,以便引用Table1.table2.whatever。 – Worthy7
是否需要每次迭代保存更改? –
不應該在Code Review SE論壇上[移植]? –