1
我是EF/Linq-To-SQL的新手。我之前讀過SO,IQueryable比IEnumerable更有益處,因爲它的評估很懶。關於以下簡單示例:IQueryable評估
var records = db.Employees.Where(x => x.EmployeeID == "3");
if (records.Any())
{
var topRecord = records.First();
}
IQueryable表達式是否被計算兩次?一次檢查結果集中的任何元素,一次檢索第一個元素?如果是這樣,是否有更有效的方法來進行這樣的選擇?
+1:刪除了我的(不正確)的答案。我在評估時忽略了'Any'布爾值。 – 2013-03-20 14:57:31
@LukeH編輯了你的帖子,指出在哪種情況下,FirstOrDefault只會幫助執行一個查詢 – Matten 2013-03-20 14:59:00