我有一个 DataColumn
的 DateTime
数据类型,我想按年份降序排列,然后按降序排列月份。
这是我尝试过的:
table.AsEnumerable()
.OrderByDescending(o => o.Field<DateTime>("MaxDateTaken").Year)
.ThenByDescending(o => o.Field<DateTime>("MaxDateTaken").Month)
我得到一个无效的转换错误,因为 Year
和 Month
是 int 数据类型,但我指定了 DateTime
在<>
有什么想法吗?
最佳答案
你不应该因此得到转换错误 - 你确定那个字段真的是一个DateTime
吗?
听起来你真的只是想要
table.AsEnumerable()
.OrderByDescending(o => o.Field<DateTime>("MaxDateTaken"))
无论如何,考虑到按年和月降序排序基本上是按日期降序排序,除了它对“日”部分没有任何作用。您真的不想在您的订单中包含“天”部分吗?
关于c# - 如何按日期部分订购?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9152131/