3

ADO.NETではdeleteステートメントを使用できます

SQL テーブルからいくつかの行を削除します。

Entity Frameworkで同等のものは何ですか?

どうすれば同じ結果を得ることができますか?

null オブジェクトでの更新は同じではありません。

4

3 に答える 3

3

最初にオブジェクトをフェッチする必要があることを伝えます (厳密に言えばキーで十分ですが、手動で作業を行う必要があります) SaveChanges。これは「通常の」アプローチですが、バッチ削除、バッチ更新、その他の便利な機能を実行できるようにする拡張機能、ヘルパーなどがたくさんあります。

EntityFramework.Extended (こちらもGitHub ) またはEntity Framework Extensions (ソースもあります)を確認できます。

于 2013-03-03T15:01:58.577 に答える
1

まず、削除するオブジェクトを取得する必要があります。例えば ​​:

 // Assuming ID is primary key in `Customer` entity
 Customer cust = (from c in context.Customers where c.ID = "1" select c);

次に、を使用してオブジェクトを削除しますDataContext.entity.DeleteObject

 context.Customers.DeleteObject(cust);
 context.SaveChanges();

詳細 : DataContext

于 2013-03-03T11:56:45.480 に答える
0

まず、データベース エンティティからインスタンスを作成する必要があります。その後、目的のオブジェクトを選択して削除します。

TestEntities db = new TestEntities();
Test ts = (from rows in db.Tests
           where rows.ID == 1
           select rows).FirstOrDefault();
if (ts != null)
{
     db.Tests.DeleteObject(ts);
     db.SaveChanges();
}

アップデート :

結果セットがリストの場合、このソリューションを使用できる複数のレコードを意味します。

List<Test> lst = (from rows in db.Tests select rows).ToList();
foreach (Test item in lst)
{ 
     db.Tests.DeleteObject(item);
}
db.SaveChanges();
于 2013-03-03T11:57:11.270 に答える