2
有和FirstOrDefault(func)&Where(func).FirstOrDefault()之間的區別?
DataFeedManager.LoadAllDataFeeds().FirstOrDefault(d => d.ItemID == itemId);
和
DataFeedManager.LoadAllDataFeeds().Where(d=>d.ItemID = itemId).FirstOrDefault();
之間的區別是有什麼特別的理由,更喜歡一個比其他?
除了編碼習慣,還有什麼? – 2012-04-03 17:46:43
說到性能:由於額外的方法調用,可能會有第二種形式的小開銷,但這大概可以忽略不計。 「它必須加載列表兩次」參數需要驗證,因爲.Where()很可能是懶惰的。您也可以檢查CPU緩存會發生什麼情況,但這需要專家的關注。 – PPC 2012-10-09 21:28:28
@PPC:什麼「它必須加載列表兩次」參數? 「LINQ到對象的地方肯定很懶」。我不確定誰在談論性能方面...... – 2012-10-09 21:35:44