我正在使用此查詢以串列格式獲取詳細資訊,因為我還獲取了用戶 ID。
reportProblemsList = objEntities.ReportProblems.ToList();
現在我想根據用戶表中的用戶 ID 獲取用戶詳細資訊。所以我按照下面的方法嘗試了 foreach 回圈。
foreach(var item in reportProblemsList)
{
userdetails = objEntities.Users.Where(x => x.UserId == item.Userid).ToList();
}
現在我想在串列中添加所有用戶詳細資訊,然后訪問它。下面是我的完整代碼。
List<ReportProblem> reportProblemsList = new List<ReportProblem>();
List<User> userdetails = new List<User>();
reportProblemsList = objEntities.ReportProblems.ToList();
foreach(var item in reportProblemsList)
{
userdetails = objEntities.Users.Where(x => x.UserId == item.Userid).ToList();
}
reportProblemsList.Add(userdetails);
但無法讓它作業......任何想法。
謝謝
uj5u.com熱心網友回復:
如果您根據給定資訊正確設計了資料庫,則您的ReportProblem物件很可能也User具有 type屬性User。如果是這種情況,您可以通過執行以下操作來指示 EF 核心在您的查詢中包含此類嵌套屬性:
var reportProblemsList = objEntities.ReportProblems
.Include(report => report.User)
.ToList();
如果你沒有這個屬性,你必須創建一個匿名型別來保存元組:
var reportsWithUsers = objEntities.ReportProblems
.Join(objEntities.Users, r => r.UserId, u => u.UserId, (Report, User) => (Report, User)
.ToList();
uj5u.com熱心網友回復:
我假設您需要一個報告問題的用戶串列。
var userIds = objEntities.ReportProblems.Select(q=> q.Userid).ToList();
List<User> userdetails = objEntities.Users.Where(x => userIds.Contains( x.UserId)).ToList();
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/356454.html
標籤:C# asp.net asp.net-mvc 实体框架 实体框架核心
上一篇:如何使用外鍵正確檢索Data物件的虛擬屬性?[復制]
下一篇:EF資料到新的引腳位置
