2014-10-01 29 views
2

我一直在檢查ServiceStack.OrmLite.SqlServer庫,它工作得很好,但我們正在查看生成的SQL,並且我們想向我們的select語句添加nolock提示,但找不到任何文檔在這附近?SQLSERVER中的ServiceStack.OrmLite nolock提示

電流:

exec sp_executesql N'SELECT "GroupID", "Name", "ShortName", "GroupTypeID", "ParentGroupId" FROM "Group" WHERE "GroupID" = @GroupID', 
        N'@GroupID int', @GroupID = 5543 

想:

exec sp_executesql N'SELECT "GroupID", "Name", "ShortName", "GroupTypeID", "ParentGroupId" FROM "Group" **WITH (NOLOCK)** WHERE "GroupID" = @GroupID', 
        N'@GroupID int', @GroupID = 5543 

任何一個知道如何做到這一點?

回答

7

我的首選是將數據庫調用包裝在系統事務中,而不是試圖在查詢中嵌入SQL Server提示。

using (var db = dbFactory.OpenDbConnection()) 
{ 
    using (var tran = db.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted)) 
    { 
     return db.Select<Group>(); 
    } 
}