![](/img/trans.png)
[英]'Nullable object must have a value.' for ICollection in LINQ c#
[英]'Nullable object must have a value.' for List in LINQ c#
在數據庫中,我有下一個 model tblWorkItem
和下一個字段:
public List<xWorkItemItemFailReason> WorkItemItemFailReasons { get; set; }
當我試圖從數據庫中獲取tblWorkItem
數據時
_db.tblWorkItem.Where(x=>x.WorkItemItemFailReasons != null)
我有下一個錯誤
System.InvalidOperationException:“可空 object 必須有一個值。”
我如何檢查此字段是否不是 null?
xWorkItemItemFailReason
類中的問題。 它具有一些不可為空的原始類型( int
、 long
、...)屬性,但在數據庫表中沒有值。 檢查它們。
在您的模態類中有一些不可為空的字段,因此當從數據庫中獲取時,它帶有空值。 所以讓它可以為空。 public int? FieldName {Get;set;}
如果它的 .net core 3.0 或更早版本存在一個已知問題
簡單的查詢過濾器打破了簡單的投影https://github.com/dotnet/efcore/issues/13517
您還應該確保您的外鍵關系沒有數據完整性問題。 父表中的外鍵值在子表中不存在也會拋出此異常(例如,如果沒有子表,則將外鍵設置為 0 而不是 null,並且數據庫中的子記錄沒有鍵值為 0)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.