【发布时间】:2011-01-13 11:23:23
【问题描述】:
我有一个包含 GMT 格式日期的列表。
确保以下 Lambda 表达式在日期字段上排序为 GMT 的最优雅方法是什么?
ProductsList.OrderBy(Product => Product.Added).ToList();
【问题讨论】:
-
“GMT 格式”是什么意思?新增属性的类型是什么?
-
格林威治标准时间。添加的是从 sql 数据库中检索的 DateTime 字段。顺便说一句,我知道这个问题是 Jon Skeet 的蜜罐!大声笑;->
-
GMT 有何相关性?
Added属性是否包含不同时区的日期?如果它们都在同一个时区,如果您只是按日期排序,或者如果您首先将所有日期转换为 GMT,则顺序不会改变。我想我在这里遗漏了一些东西...... -
您好,Added 字段是源自数据库的 DateTime,并保存为 GMT,但我想确保稍后它不会被排序为字符串。但我想通过确保它在传递给列表时将其类型保持为日期时间将确保不会发生这种情况。
-
如果您添加的日期时间是格林威治标准时间,那么您应该没有问题。如果您执行“Product.Added.ToString()”,它只会排序为字符串。