我几周来一直在努力解决这个问题。我似乎可以在C#中找到答案而不是vb.net,因为VB.net使用的是匿名类型。我可以对我的专栏进行分组,但我想要的是短日期(11/11/11),而不是日期和时间(11/11/11 11:11:11)。这是我目前所拥有的:
Dim preSort = SortedTimeline.GroupBy(Function(GroupTime) New With {Key GroupTime.Scheduled_Start})
仅当时间也匹配时,才会创建组。由于它是匿名的,我不能在密钥上添加任何.tostring或任何日期魔法。
任何想法???
答案 0 :(得分:4)
通常你会使用DateTime.Date
属性,但EF6不支持它,并且需要使用DbFunctions.TruncateTime
方法。
此外,VB.NET不要求使用匿名类型(尽管我很确定有办法指定匿名类型成员 name )。按照您的情况按单个字段进行分组时,您可以使用以下内容(如Group By VB.NET example所示):
.GroupBy(Function(GroupTime) DbFunctions.TruncateTime(GroupTime.Scheduled_Start))