2

我的应用程序使用 ADO.NET 对 sql server 数据库进行 sql 查询。sql server 默认事务级别设置为已提交读。应用程序对所有事务使用事务隔离级别可重复读取。但是,对于某些选择(而不是所有时间相同的选择),事务隔离级别似乎设置为可序列化。有什么理由会发生这种情况吗?有没有办法强制给定的选择在给定的隔离级别上运行?

4

1 回答 1

1

.NET 中 Transaction 类的默认隔离级别是可序列化的。隔离级别是连接处理后返回池时不会重置的连接属性之一。这就是你观察这个的原因。

使用 Transaction 类的 .NET 应用程序的最佳实践是显式设置隔离级别。

于 2014-05-18T10:12:04.917 回答