[英]How to use linq orderby with a group by
我在下面有一個查詢,我想在 t.day 之前訂購。 我是 linq 的新手。 在下面的這個查詢中,我在哪里放置 orderby t.day? 謝謝。
var pracResult = (from t in queryResult
group t by new {t.RouteNbr, t.Day,t.NumberOfActionPlans,t.RouteNbrPlusDay}
into grp
select new
{
grp.Key.RouteNbr,
grp.Key.Day,
grp.Key.NumberOfActionPlans,
grp.Key.RouteNbrPlusDay,
}).ToList();
//orderby t.Day
我不明白您為什么再次將您的群組轉換為他們的密鑰。 如果您打算訂購您可以使用的群組,
var pracResult = (from t in queryResult
group t by new {t.RouteNbr, t.Day,t.NumberOfActionPlans,t.RouteNbrPlusDay}
into grp
orderby grp.Key.Day
).ToList();
否則,如果您想要完全等效的代碼,為什么不這樣做,
var pracResult = queryResult.Select(i => new {i.RouteNbr, i.Day, i.NumberOfActionPlans, i.RouteNbrPlusDay})
.Distinct()
.OrderBy(k => k.Day)
.ToList();
你可以加
orderby krp.Key.Day
在 group 子句之后。
嘗試這個:
var pracResult = queryResult.GroupBy(t => new {t.RouteNbr, t.Day,t.NumberOfActionPlans,t.RouteNbrPlusDay})
.OrderBy(l => l.Key.Day)
.Select(grp =>new{ grp.Key.RouteNbr,
grp.Key.Day,
grp.Key.NumberOfActionPlans,
grp.Key.RouteNbrPlusDay}).ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.