12

新しいEntityFrameworkに複数のアイテムを削除するメソッドが含まれることを読みました(Linq to SQLにはDeleteAllOnSubmit()があります)が、それを行うための関数/メソッドが見つかりません。

これはベータ2ですか、それとも自分で作成する必要がありますか?

アップデート:

これは私が今使っているものです:

    public void DeleteObjects(IEnumerable<object> objects)
    {
        foreach (object o in objects)
        {
            DeleteObject(o);
        }
        SaveChanges();
    }
4

2 に答える 2

8

EF 4を使用すると、オブジェクトコンテキストに対してTSQLステートメントを実行できます。

   using (var context = new EntityFrameworkExampleEntities())
    {       
     var count = 
         context.ExecuteStoreCommand(@"DELETE FROM Companies WHERE [CompanyID]=4");            
    }

詳細については、次のブログを参照してください。

http://blogs.microsoft.co.il/blogs/gilf/archive/2009/11/25/execute-t-sql-statements-in-entity-framework-4.aspx

于 2009-11-28T23:30:08.253 に答える
0

私はこれが遅いことを知っています、しかし私はこの投稿を見つけて、投稿されなかったより簡単な解決策を見つけました。アソシエーションプロパティでOnDeleteをCascadeに設定できます。VS2012では、edmxファイルを開きます。関連付けをクリックすると、[プロパティ]タブにOnDeleteが表示されます。次に、トリガーやその他の特別な処理を行わずに、Remove()メソッドを使用できます。

于 2013-05-30T10:51:31.790 に答える