FirstOrDefault或SingleOrDefault將返回什麼樣的數據。關於FirstOrDefault或SingleOrDefault
想我的查詢返回3記錄像
empid ename salary
----- ----- ------
1 joy 1500
2 rob 4500
3 jen 6500
所以如果我們使用FirstOrDefault或的SingleOrDefault的話,我會得到什麼樣的結果集。請用例子來解釋。感謝
FirstOrDefault或SingleOrDefault將返回什麼樣的數據。關於FirstOrDefault或SingleOrDefault
想我的查詢返回3記錄像
empid ename salary
----- ----- ------
1 joy 1500
2 rob 4500
3 jen 6500
所以如果我們使用FirstOrDefault或的SingleOrDefault的話,我會得到什麼樣的結果集。請用例子來解釋。感謝
的SingleOrDefault將返回異常,因爲它等待得到一個記錄或沒有記錄和FirstOrDefault將返回第一條記錄(1和喜悅1500) 可以使用的SingleOrDefault當你在那裏包含將在你切切實實的記錄恢復條件案例 - where empid == 1
很明顯,你只想要ID爲1
| 0 values | 1 value | > 1 value
FirstOrDefault | Default | First value | First value
SingleOrDefault | Default | First value | Exception
而且該表擴展到整個組一個數據庫記錄:
| 0 values | 1 value | > 1 value
First | Exception | First value | First value
FirstOrDefault | Default | First value | First value
Single | Exception | First value | Exception
SingleOrDefault | Default | First value | Exception
Last | Exception | Last value | Last value
LastOrDefault | Default | Last value | Last value
這裏還有另外一個版本的Wi TH一些具體的值,使之更清晰:
| [] | [1] | [1,2,3]
First | Exception | 1 | 1
FirstOrDefault | 0 | 1 | 1
Single | Exception | 1 | Exception
SingleOrDefault | 0 | 1 | Exception
Last | Exception | 1 | 3
LastOrDefault | 0 | 1 | 3
我根本不明白從你的幫助。相反,解釋會更好....感謝 – Mou
@ user72:你不明白?桌子很清澈。 –
@ user728750:對於你的數據樣本,'FirstOrDefault'會給你「喜悅」,而'SingleOrDefault'會拋出異常。 –
FirstOrDefault將返回的第一個元素和默認值(默認值值類型和空的引用類型)的元素,如果沒有元素存在。
如果只有一個存在,SingleOrDefault將返回該元素。如果不存在,則默認爲default,如果查詢中包含多個元素,則引發異常。
在你的情況下,FirstOrDefault將返回第一個元素。 而SingleOrDefault會拋出異常。
謝謝...給我一個SingleOrDefault的小樣本。我需要知道SingleOrDefault將被使用的情況。請需要一個樣品。 – Mou
你可以使用SingleOrDefault當你的地方包含一個條件,將在你的情況下將記錄返回的情況下 - empid == 1顯然你只想要一個數據庫記錄與ID 1 – kleinohad