關於Linq中First、FirstOrDefault;Single、SingleOrDefault等方法的說明

關於Linq中First、FirstOrDefault;Single、SingleOrDefault等方法的說明

這裏以First、FirstOrDefault進行說明,其餘相似。 
一、First:取序列中知足條件的第一個元素,若是沒有元素知足條件,則拋出異常 對象

二、FirstOrDefault:取序列中知足條件的第一個元素,若是沒有元素知足條件,則返回默認值(對於能夠爲null的對象,默認值爲null,對於不能爲null的對象,如int,默認值爲0)方法

三、Single,返回序列中的惟一一條記錄,若是沒有或返回多條,則引起異常。異常

四、SingleOrDefault,返回序列中的惟一一條記錄,若是序列中不包含任何記錄,則返回默認值,若是返回多條,則引起異常。 

注:以上默認值爲NULL。

First、FirstOrDefault的區別在於:當沒有元素知足條件時,一個拋出異常,一個返回默認值。所以,在使用時,必定要注意這個區別: 一、當確信序列中必定有知足條件的元素時,使用First方法,取到元素後,無需判斷是否爲null二、當序列中可能找不到知足條件的元素時,使用FirstOrDefault方法,而後,必定要對返回值是否爲null,進行不一樣的處理

相關文章
相關標籤/搜索