我有一个简单的linq查询,它根据dateTime下降和递增对记录进行排序。出于某种原因,它在13:00:00失败了。
sortedrecords = sortedrecords.OrderByDescending(x => x.DateTime).ThenBy(x=>x.Time);
它应该在下午2点,下午1点,下午12点排序。但下午1点的记录到了最后。
我的查询有问题吗?任何建议都会有所帮助。
由于
按降序排序(失败)
10/12/2017 2:00:56 PM
10/12/2017 2:00:50 PM
10/12/2017 12:29:41 PM
10/12/2017 12:28:32 PM
10/12/2017 12:27:35 PM
10/12/2017 11:21:35上午
10/12/2017 11:14:16上午
10/12/2017 1:49:28 PM
10/12/2017 1:43:23 PM
按升序排列(正确)
10/12/2017 12:27:35 PM
10/12/2017 12:28:32 PM
10/12/2017 12:29:41 PM
10/12/2017 1:43:23 PM
10/12/2017 1:49:28 PM
10/12/2017 2:00:50 PM
10/12/2017 2:00:56 PM
答案 0 :(得分:0)
由于您没有具体说明您的对象类型,列类型,数据库(假设您使用的是),为什么使用.Net类类型名称作为列名等,我将假设您是处理List
中的匿名对象:
sortedrecords = sortedrecords.OrderByDescending(x => DataTime.Parse(x.DateTime));