如何在联接和分组后排序
本文关键字:排序 | 更新日期: 2023-09-27 18:31:53
如何在加入和分组后排序?如何按字段ps.end
排序?
var query =
from p in _productRepository.Table
join ps in _productScheduleRepository.Table on p.Id equals ps.ProductId
where p.Published &&
!p.Deleted &&
p.ShowOnHomePage &&
!ps.IsUsage && ps.Start <= DateTime.Now && ps.End >= DateTime.Now
group p by p.Id into Grouped
select Grouped.FirstOrDefault();
要对组中的项目进行排序,只需调用 OrderBy
:
var query = from p in _productRepository.Table
join ps in _productScheduleRepository.Table on p.Id equals ps.ProductId
where ...
group new{ p, ps } by p.Id into Grouped
select Grouped.OrderBy(pair => pair.ps.end).FirstOrDefault().p;