0

WindowsPhone7.1でLinq2SQL CEを使用して、「DELETE FROM table_name WHERE some_column = some_value」SQLコマンドをトリガーするにはどうすればよいですか?

残念ながら、Table.DeleteAllOnSubmit()メソッドを使用したアイテムの消去は、「最大バッファーサイズ」パラメーターを1024に増やした後でも、許容できないほど遅くなります。stupudLinqは各レコードを逆シリアル化するため、DataContext.SubmitChanges()メソッドは返されません。

4

1 に答える 1

1

目的の DELETE ステートメントをトリガーすることはできませんが、次のことはできます。

.Take(100) を使用して、SubmitChanges() 呼び出しごとに一連のレコードを取り出して削除し、行が返されなくなるまでループで実行します。

私のテストでは、rowversion 列を使用して削除を高速化し、320 ミリ秒から 70 ミリ秒未満に短縮しました - http://erikej.blogspot.dk/2012/04/windows-phone-local-database-tip.html

于 2013-03-13T16:59:16.107 に答える