簡體   English   中英

“序列不包含匹配元素”,而不是null

[英]“Sequence contains no matching element ” instead of just null

myCollection包含Id == 10元素:

var myVar1 = myCollection.Where(q => q.Id == 10);

在上述情況下, myVar1僅代表空集合。

但是,為什么在下面的示例中,我得到一個不包含匹配元素異常的Sequence,而在myVar2 中不包含 null呢?

var myVar2 = myCollection.First(q => q.Id == 10);

如何正確解釋?

如果要第一個匹配項,請使用FirstOrDefault如果沒有,請使用null。

var myVar2 = myCollection.FirstOrDefault(q => q.Id == 10);

因為First()期望返回一個且只有一個結果。 這並不是要處理一個或沒有結果。

為此,您需要FirstOrDefault()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM