2009-09-23 26 views
1

,如果您有類似(只是舉個例子不用擔心)我需要確認此有關的LINQ to SQL /實體

var result = from n in mytable select n; 
var last = n.LastOrDefault; 
var secondresult = n.FirstOrDefault; 
var Thirdresult = secondresult.FirstOrDefault; 
var Finalresult = Thirdresult.FirstOrDefault; 

是這將查詢數據庫5次?

+0

如果數據庫是SQL Server,請運行分析器以查找針對數據庫實際執行的查詢。 (在Management Studio中,轉到Tools/SQL Server Profiler。 – cdonner 2009-09-23 16:19:34

回答

1

這將在第二個語句中查詢數據庫至少兩次。

可能是四次(雖然可能不是,因爲第三和第四條語句沒有意義,因爲返回的L2E或L2S查詢的大多數元素本身並不是可枚舉的;因爲您不顯示類型,我會讓可能性開放),這取決於返回的類型。

不是五次,因爲第一條語句不會運行查詢。

+0

謝謝,我目前正在審查其他人完成的一些代碼,並且我在任何地方都看到了這種代碼,並且在告訴他們之前我想確保我是對的。我將等待1小時,如果沒有更好的答案,您將獲得綠色支票 – Fredou 2009-09-23 16:13:50

+0

可以肯定的是,使用SQL分析器。 – 2009-09-23 16:42:46