订购日期从最近到最远

Posted

技术标签:

【中文标题】订购日期从最近到最远【英文标题】:Order dates from closest to farthest from now 【发布时间】:2018-08-25 08:38:50 【问题描述】:

我有一个日期列表,格式为“dd/mm/yyyy hh:mm:ss tt”格式的字符串,我正在尝试按最近到最远的方式对它们进行排序:

09/12/2018 12:00:00 PM
10/12/2018 12:00:00 PM
11/12/2018 12:00:00 PM

我的代码似乎是从 11 日到 09 日订购它们,这是我不想要但似乎无法正确处理的。

DateTime now = DateTime.Now;
var ordered = herds.HerdList.OrderBy(n => (now - DateTime.Parse(n.Date_Visit)).Duration());

上面的代码给了我:

11/12/2018 12:00:00 PM
10/12/2018 12:00:00 PM
09/12/2018 12:00:00 PM

我怎样才能反过来订购?

谢谢

【问题讨论】:

我有一个日期列表作为字符串" 为什么Date_Visit-dates 是字符串? 刚从 Web 服务传来并发送到 Web 服务。我将它解析为一个日期,以便及时处理。 所以基本上得到对象创建的日期和时间,转成字符串发送到web服务保存在云端。 降序排列? 天啊,我就是这么笨> 【参考方案1】:

我怎样才能反过来订购?

使用OrderByDescending 而不是OrderBy

【讨论】:

你是第一个,看到你删除了答案。将标记这一点。很抱歉浪费了你的时间,下次不喝咖啡就不问了xD【参考方案2】:

您只需使用OrderByDescending(x => whatever) 即可翻转任何Orderby(x => whatever) 的顺序。

【讨论】:

【参考方案3】:

var ordered = herds.HerdList.OrderBy(n => DateTime.Parse(n.Date_Visit));

【讨论】:

以上是关于订购日期从最近到最远的主要内容,如果未能解决你的问题,请参考以下文章

按最近日期订购日期-SQL 选择单个 ID

我如何在 c 中订购日期结构?

如何通过远距离以外的其他方式订购rails geocoder gem的结果

SQL - 在按创建日期订购“重复重新推送”时显示一行两次

如何根据最近的日期属性获取两个字段?

WooCommerce 似乎只按日期订购而不是按价格订购