0

我在 Mongo 有一张桌子。其中一个字段是日期时间。我希望能够获得仅在一天内的所有记录(即 2011 年 9 月 3 日)。

如果我做这样的事情:

 var list = (from c in col
             where c.PublishDate == DateTime.Now
             select c).ToList();

然后它不起作用,因为它在比较中使用时间。通常我只会比较 ToShortDateString() 但 NoRM 不允许我使用它。

想法?

大卫

4

1 回答 1

2

处理此问题的最佳方法通常是计算相关日期的开始日期时间和结束日期时间,然后查询该范围内的值。

var start = DateTime.Now.Date;
var end = start.AddDays(1);
...

但也建议您现在切换到官方 C# 驱动程序。您还应该在数据库中使用 UTC 日期时间(但这会变得更加复杂)。

于 2011-09-07T02:32:11.180 回答