重複の可能性:
TransactionScope とマルチスレッド
変更をロールバックできるように、TransactionScope を使用しています。また、実行したい操作の IEnumerable で PLINQ を使用しています。
TransactionScope は PLINQ によって作成された新しいスレッドに引き継がれないため、各操作は元のスレッドの TransactionScope によってブロックされ、並列化された操作は (ADO .NET レベルで) タイムアウトします。
これを回避する方法、または私の TransactionScope を新しいスレッドに運ぶ方法はありますか? それが必要な場合は、MSDTC にエスカレートしてもかまいません。
ありがとう。