如何使用linq查询对时间字段进行排序

时间:2015-03-10 10:40:16

标签: entity-framework linq

我有一张桌子,它有一个这样的列

T1 column with datatype is varchar
------------
10:30 AM,
04:05 PM,
11:08 AM,
08:30 PM,
05:20 PM

我想根据我想要按降序显示数据的时间使用linq查询来排序时间

1 个答案:

答案 0 :(得分:2)

就像执行以下一样简单

var stringToParse = "10:30 AM, 04:05 PM, 11:08 AM, 08:30 PM, 05:20 PM";
var result = stringToParse.Split(new char[]{','})
                          .OrderBy(x=> 
                                   { return DateTime.ParseExact(x.Trim(), "hh:mm tt", System.Globalization.CultureInfo.InvariantCulture);});

请注意,日期部分默认为当前日期。