[英]Entity Framework Select Collection of Related Entities as Their Own List
Here is my db tables for this question: 这是我针对该问题的数据库表:
Given that I have already selected a WorkReleaseHeader, I now want to get a list of the WorkOrderDetails related to that WorkReleaseHeader. 鉴于我已经选择了一个WorkReleaseHeader,现在我想要获取与该WorkReleaseHeader相关的WorkOrderDetails的列表。 Seems easy enough, but I'm not able to achieve this.
看起来很容易,但是我无法实现。 My feable attempt:
我可行的尝试:
List<WorkReleaseDetail> workReleaseDetails =
((IEnumerable<WorkReleaseDetail>)wrkRlsHdr.WorkReleaseDetails).ToList();
List<WorkOrderDetail> workOrderDtlsForWorkRelease =
workReleaseDetails
.Select(wrkDtls => wrkDtls.WorkOrderHeader.WorkOrderDetails).ToList();
Results in the error on the Select statement line: 在Select语句行上导致错误:
Error 3 Cannot implicitly convert type
'System.Collections.Generic.List<System.Collections.Generic.ICollection<WorkOrderDetail>>'
to 'System.Collections.Generic.List<WorkOrderDetail>'
I think this should work : 我认为这应该工作:
List<WorkOrderDetail> workOrderDtlsForWorkRelease =
workReleaseDetails
.SelectMany(wrkDtls => wrkDtls.WorkOrderHeader.WorkOrderDetails).ToList();
The SelectMany in LINQ can flat your list so in your example you won't have a collection of list. LINQ中的SelectMany可以平铺您的列表,因此在您的示例中,您将没有列表的集合。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.