2012-03-23 21 views
8

System.Transactions.TransactionScopeを使用し、分離レベルを指定しないと、デフォルト値はSerializableになります。ただし、トランザクションスコープを使用していない場合は、旧式のテーブルアダプタを使用していますか?次に、デフォルトの分離レベルは何ですか?デフォルトのADO.NET分離レベルは何ですか?

事前に感謝します。

+5

を負いません。分離レベルはプールされた接続の使用の間にリセットされないので、「基礎となる接続の最後の使用が何をしているか」にも依存します。 –

+0

@MarcGravellありがとう、ありがとう。私の同僚はちょうど私に同じことを言及したリンクを送った。確かに成功のピットではなく、.NETを使って7年後に気づかなかったのですが...。 –

+0

"デフォルトのデフォルト"はおそらくコミットされています –

答えて

3

アプリケーションのデータ操作について絶対的である必要がある場合は、デフォルトに頼ることは望まないかもしれません。これらはフレームワークのバージョン間で変更される可能性があります。

TransactionScope(状況に応じてDTCへのエスカレーションを意味する場合があります)またはターゲットのストアドプロシージャコール(ルートが使用されている場合)内で明示的に行うことを強くお勧めします。 DTC/TransactionScopeの上

詳細:https://stackoverflow.com/a/9075800/1568341

TL; DR

A:読み取りSQL文のために犯したがそれはより複雑であるデフォルト

関連する問題