我在下面有这个查询,它会返回一个
IQueryable<IEnumerable<YogaSpaceEvent>>
但我希望山雀能够返回一份YogaSpaceEvents列表
var listYogaEvents = dbContext.YogaProfiles.Select(i => i.YogaSpaceEvents.Where(j => j.EventStatus == YogaSpaceEventStatus.Active));
如何让它返回
List<YogaSpaceEvents>
答案 0 :(得分:1)
将Select
更改为SelectMany
,然后按以下方式致电ToList
:
List<YogaSpaceEvents> result =
dbContext.YogaProfiles
.SelectMany(i => i.YogaSpaceEvents.Where(j =>
j.EventStatus == YogaSpaceEventStatus.Active)).ToList();
这将折叠(展平)所有嵌套的IEnumerable<YogaSpaceEvent>
,然后将元素累积到List
实例中。