0

私は(夜間に)linq2sqlクエリの形式で大量のデータを取得し、これをXML(サイトマップ)としてダンプするプロセスを持っています。私の問題は、私が時々得ていることです:

System.Data.SqlClient.SqlException:

トランザクション(プロセスID XX)は、別のプロセスとのロックリソースでデッドロックされ、デッドロックの犠牲者として選択されました。トランザクションを再実行します。

このクエリは読み取り専用であり、「トランザクションセーフ」である必要はありません。例外を回避するために、このようなプロセスを作成できますか?

編集:

基本的にコードは次のとおりです。

foreach(Record record in MyDataContext.FatTableWithRecords) //about 50' records
{
   //produce some XML (dumped to file when max 50' records or 10MB large)
}
4

1 に答える 1

0

xmlautoクエリのコードは特定の問題をデバッグするのに役立ちますが、SQL ジョブやSQL サーバー機能の一部を使用しtransaction isolation level read uncommittedてニーズを処理することもできます。

于 2009-12-08T22:31:57.217 に答える