我需要找到一种在 NHibernate 中执行的每个 SELECT 中使用 with(nolock) 的方法。
不管是用hql、Linq查询还是条件调用都没有关系,只要执行SELECT时,with(nolock)就出现了!

最佳答案

将您的数据库事务隔离级别设置为 SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
NOLOCK 等价于 READUNCOMMITED,因此如果您的连接使用该事务隔离级别,您将获得相同的效果。

警告!危险!读这个!!!

这是我在 NOLOCK HINT(以及一般的 HINTS)上找到的最好的解释。
值得一读:

SQL Server NOLOCK Hint & other poor ideas

添加引用:

SET TRANSACTION ISOLATION LEVEL

Adjusting Transaction Isolation Levels

Isolation Levels (OLE DB)

关于c# - WITH(nolock) 在每个 SELECT - NHibernate,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9899984/

10-10 22:26