我正在使用實體框架將SQL函數轉換爲C#,並且我正在轉換的函數在要加入的每個表(其中10個)上使用NOLOCK
提示。實體框架加入NOLOCK
因此,我決定將整個交易的IsolationLevel
設置爲ReadUncommitted
。目前,我正在做內部連接。
from a in context.table1.ToList()
join b in context.table2.ToList on a.Id equals b.Id
等等等等
會宣佈名單,例如
IEnumerable<table1> Table1 = new List<table1>();
,然後使用上下文開始之前,我的表在我的查詢產生不同的結果填充它們? I.e Table1
與context.table1.ToList()
相同?如果是這樣,我應該使用哪個實現?
我不知道我是否曾經使用過它,但是有沒有辦法按照每個表格來做? – adam0101
開箱即用,您的DbContext需要一些額外的邏輯來更改發送到服務器的查詢。你可以使用NOLOCK提示創建一個VIEW並將該視圖映射到IF中的實體,然後從你的C#代碼中一起抽象出NOLOCK提示。 – Igor
我將這些轉換爲我的工作,迄今爲止我轉換的SP更容易。我的直覺告訴我不要質疑NOLOCK,因爲它現在超過了我的薪酬級別。感謝您提示擺脫ToList()。 –