【发布时间】:2014-05-01 00:43:51
【问题描述】:
我正在为分组 linq 查询而苦苦挣扎
我有这个:
DateTime dateFrom = new Date(2014,8,2);
var GroupedPrices = Prices.Where(p => p.ArrivalDateFrom <= dateFrom
&&
p.ArrivalDateTo > dateFrom)
.GroupBy(p => p.ItemID);
我试图获得每个 ID 的单一价格 - 例如。在/来自每个组,基于该价格的最新 ValidFrom 日期。 我已经开始按他们的 ItemID(不是单独的价格记录 ID)对它们进行分组,但我正在努力研究如何根据最新的 ValidFrom 日期仅获取一个。我以为我可以在分组之前订购它们,但不确定分组完成后是否会坚持..即
预计它将使用 Max(x=>x.ValidFrom) 类型的东西或 OrderByDescending(x=>x.ValidFrom).First() 但无法解决
非常感谢任何帮助
谢谢
【问题讨论】:
-
ID 是唯一的吗?如果是,将它们分组对您没有多大好处
-
他们不是,这是所有商品的价格表,我会调用那个商品 ID 以便更清楚