3

次のステートメントはallCarsからsomeCarsを削除する必要があり、それは機能しますが、特にlinqのみを使用するより良いソリューションがあるかどうか疑問に思いました

foreach (var car in someCars) 
{
    db.allCars.DeleteObject(car); 
}

dbはdbエンティティのインスタンスであることに注意してください。

どんな助けでも大歓迎です。

4

3 に答える 3

5

EntityFramework.Extendedライブラリを使用して、特定の条件に基づいてエンティティを削除できます(ライブラリはNugetから入手できます)。

db.allCars.Delete(car => /*condition*/);
于 2013-01-10T13:31:13.833 に答える
4

ForEachとしてLinqを使用する:

db.allCars.Where(/* condition */).ToList().ForEach(car => db.allCars.Remove(car));

この回答の同じ行で:)、Entity Frameworkで複数の行を削除するにはどうすればよいですか(foreachなし)

于 2013-11-09T22:59:11.933 に答える
0

次を使用できます。

db.allCars.RemoveAll(db.allCars.Where(/* condition */));
于 2013-01-10T13:33:42.230 に答える