所以我有一个列表与对象。这些对象有一个属性TimeStamp。问题是,这个属性是一个字符串。现在,通过时间戳排序列表时,排序功能忽略“AM”和“PM”在列表中进行演员表<T>。排序
var historicalAlarms = new List<IHistoricalAlarmItem>();
foreach(...)
{
...
}
historicalAlarms.Sort((x, y) => ((Belimed.Alarm.HistoricalAlarmItem)x).TimeStamp.CompareTo(((Belimed.Alarm.HistoricalAlarmItem)y).TimeStamp));
是否有可能时间戳转换为新DateTime对象进行排序的功能不能忽视上午和下午?请记住,在列表中的对象也需要转换为另一种类型(不幸的是他们具有相同的名称)
这工作:
historicalAlarms.Sort((x, y) => ((Belimed.Alarm.HistoricalAlarmItem)x).ActivationTime.CompareTo(((Belimed.Alarm.HistoricalAlarmItem)y).ActivationTime));
这并不:
historicalAlarms.OrderBy(x => DateTime.Parse((Belimed.Alarm.HistoricalAlarmItem)x.TimeStamp))
是的,你应该将字符串转换为日期时间并比较它们。 – Derek
_“问题是,这个属性是一个字符串”_一个承认的错误是一半纠正。 –