8

forループやLINQを使用する他のループを使用せずに、エンティティフレームワークで複数のレコードを削除したい。SQLでできることは、エンティティフレームワークで複数のレコードを削除する方法はありますか?

4

2 に答える 2

7

あなたがしたいことは、EntityFrameworkを使用してサポートされていません。Entity Frameworkは、オブジェクトを削除する前に、オブジェクトをメモリにロードする必要があります。このようにして、楽観的同時実行性チェックを実行できます。

これが本当に必要な場合は、純粋なSQL以上でこれを行う必要があり、ストアドプロシージャを使用します。EntityFrameworkを使用してストアドプロシージャを呼び出すことができます。

于 2010-05-24T16:11:19.260 に答える
2
using (var context = new DatabaseEntities())
{
    context.ExecuteStoreCommand("DELETE FROM YOURTABLE WHERE CustomerID = {0}", customerId);
}
于 2011-07-07T18:11:26.090 に答える