序列不包含任何匹配元素


 

在C#中使用Lambda進行First或Single查詢時,有可能會報異常:

異常詳細信息:System.InvalidOperationExecption:序列不包含任何元素

原因是因為使用First的時候至少必須有一條數據,使用Single查詢的時候查詢結果必須有且只有一條數據,如果沒有查到任何數據就會報異常。

解決辦法:使用FirstOrDefault和SingleOrDefault,如果沒有數據的話,返回對應類型的默認值。

 

【解決過程】

根據上面的參考答案,將First改成FirstOrDefault后,報錯未將對象引用到實例,轉到First的定義,文件只讀未能更改。曹幫我寫了一個判斷解決了問題。

id的值為0,但是數據庫里沒有SCTId為0的數據,所以曹加了一個id>0的條件,排除了id等於小於0的可能,才能查出數據。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM