我之前有一个类似的问题,然后我的老板告诉我根据日期对它进行排序,所以我又来了。 我有这个 -
List<User> users;
protected class User : IComparable<User>
{
public string name;
public string email;
public decimal total;
public string address;
public string company;
public string placed;
public string fulfilled;
public string origin;
public int CompareTo(User b)
{
// Alphabetic sort name[A to Z]
return this.placed.CompareTo(b.placed);
}
}
我的日期时间格式是MM / DD / YYYY,因此按月计算,而不是整个月。根据完整日期对其进行排序的最佳方法是什么?谢谢!
答案 0 :(得分:4)
您知道这是一个约会,那么为什么要将其存储为string
?使用专用的DateTime
类型。它将按预期工作。
如果由于某种原因无法将字段更改为DateTime
,则可以随时执行以下操作
public int CompareTo(User b)
{
DateTime x = DateTime.ParseExact(this.placed,...);
DateTime y = DateTime.ParseExact(b.placed,...);
return x.CompareTo(y);
}