我能够使用强类型LINQ扩展: .Include
result = (from A in context.Transactions.Include(_ => _.TransactionDetails)
where A.TransactionId == transactionId
select A).SingleOrDefault();
但是我无法在 TransactionDetails 中继续前进。我的 TransactionDetails 还有一个名为用户的导航,但我不知道如何设置它。我在 TransactiomDetails 中的可用选项是集合的常规扩展(例如First; FirstOrDefault等)。
我能够使用常规字符串方法(我想避免):
result = (from A in context.Transactions.Include(_ => _.TransactionDetails)
.Include("TransactionDetails.User")
where A.TransactionId == transactionId
select A).SingleOrDefault();
由于
答案 0 :(得分:2)
使用此:
result = context.Transactions
.Where(t => t.TransactionId == transactionId)
.Include(t => t.TransactionDetails.Select(u => u.User))
.FirstOrDefault();