以下语句应该从allCars中删除someCars,并且它有效,但我想知道是否有更好的解决方案,只专门使用linq
foreach (var car in someCars)
{
db.allCars.DeleteObject(car);
}
请注意,db是db实体的实例。
非常感谢任何帮助。
答案 0 :(得分:5)
您可以使用EntityFramework.Extended库根据某些条件删除实体(Nuget提供的库):
db.allCars.Delete(car => /*condition*/);
答案 1 :(得分:4)
使用Linq作为ForEach:
db.allCars.Where(/* condition */).ToList().ForEach(car => db.allCars.Remove(car));
在这个答案的同一行:),How do I delete multiple rows in Entity Framework (without foreach)
答案 2 :(得分:0)
您可以使用:
db.allCars.RemoveAll(db.allCars.Where(/* condition */));