repo
.Where(x=>x.Id==id)
.Include(x=>x.History.Select(c=>c.ProductInfo)).FirstOrDefault();
上面的查询应该返回给定用户购买的所有产品,并且必须包含产品详细信息。它可以工作。所以导航属性没有问题。
现在我想将产品拆分为Delivered
和notDelivered
repo
.Where(x => x.Id == id)
.Include(x=>x.History.Select(c=>c.ProductInfo))
.Select(x =>
new Details { User = x,
notDelivered = x.History.Where(k=>!k.IsDelivered),
Delivered=x.History.Where(k=>k.IsDelivered)})
.FirstOrDefault();
它按应有的方式划分产品,但 ProductInfo 始终为空。我不知道为什么不选择ProductInfo