[英]Linq Grouping Order By Date then Time
晚上好,
我设法让我的Linq查询几乎正确。 还有一个问题我正在努力解决。
我的疑问是
var o =
(from c in x
group c by x.Date.Date into cc
select new
{
Group = cc.Key.Date,
Items = cc.ToList(),
ItemCount = cc.Count()
}).OrderByDescending(p => p.Group);
现在这个查询工作正常。 它按日期在ListView内进行分组。 x.Date是我的SQL数据库中的DateTime字段。 因此,我按照DateTime字段的实际日期选择x.Date.Date为Group,就好像它只是x.Date它将按日期和时间分组。
我的问题是,我如何按时间分组,以便最新时间位于小组的最高位置?
非常感谢
使用linq“ThenBy()”方法:
var o = (from c in x group c by x.Date.Date into cc select new
{
Group = cc.Key.Date,
Items = cc.OrderByDescending(y=>y.Date).ToList(),
ItemCount = cc.Count()
})
.OrderByDescending(p => p.Group)
将Items = cc.ToList()
更改为Items = cc.OrderBy(c => c.[field_you_want_to_sort_by]).ToList()
var o =
(from c in x
group c by c.Date.Date into cc
select new
{
Group = cc.Key.Date,
Items = cc.OrderByDescending(a=>a.Date.Time).ToList(),
ItemCount = cc.Count()
}).OrderByDescending(p => p.Group);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.