【发布时间】:2017-07-06 22:58:01
【问题描述】:
这是一个有趣的问题。我正在使用 iComparable 界面按日期对列表进行排序。我今天再次测试它,当我注意到一些东西时。我输入了 2016 年 11 月 1 日作为日期。当数据被发送到屏幕时,该日期是第一个,即使列表中的其他日期在它之前。我意识到系统会认为 11 可能需要位于列表顶部,但我该如何解决这个问题?
public class SortbyDate :IComparer<OilChange> {
public int Compare(OilChange x, OilChange y) {
return x.ServiceDate.CompareTo (y.ServiceDate);
}
}
谢谢!
【问题讨论】:
-
奇怪。 “OilChange.ServiceDate”属性的类型是什么?真的是 DateTime 还是字符串?
-
它是一个字符串。 DateTime 的问题太多了。
-
嗯,这就是排序问题的原因。您在使用 DateTime 时遇到了什么问题?
-
我无法消除时间部分。