Vis*_*hal 2 c# datetime linq-to-entities group-by
我有这样的清单 -
Id Date
1 01/03/2011 14:15:23.320
1 01/03/2011 16:15:23.320
1 01/03/2011 18:15:23.320
1 01/04/2011 19:15:23.320
2 01/03/2011 14:15:23.320
2 01/03/2011 15:15:23.320
2 01/03/2011 18:15:23.320
2 01/05/2011 19:15:23.320
2 01/07/2011 20:15:23.320
Run Code Online (Sandbox Code Playgroud)
我想要的输出是 -
Id Date
1 01/03/2011
1 01/04/2011
2 01/03/2011
2 01/05/2011
2 01/07/2011
Run Code Online (Sandbox Code Playgroud)
那么我怎样才能在id的第一个列表上进行分组,只采用日期部分并在Linq中实现上述结果?
尝试这样的事情:
var result = yourList.GroupBy(item =>
new {Id = item.Id, Date = item.Date.Date});
Run Code Online (Sandbox Code Playgroud)
基本上,DateTime.Date
剥离时间信息.
要遍历结果,您可以执行以下操作:
foreach(var grp in result)
{
Console.WriteLine("{0}: {1}", grp.Key.Id, grp.Key.Date);
}
Run Code Online (Sandbox Code Playgroud)