如何在mongodb C#驱动程序中比较没有时间的日期?

我尝试使用此代码,但它不起作用。

MongoCursor<Log> query = _logCollection.FindAs<Log>(
                               Query.And(Query.EQ("Date.getDate()", date.Day),
                                         Query.EQ("Date.getMonth()", date.Month),
                                         Query.EQ("Date.getYear()", date.Year)));

你有什么想法?

最佳答案

查询日期范围,其中包括您的日期:

var beginDate = date.Date;          // e.g. 7/24/2013 00:00:00
var endDate = beginDate.AddDays(1); // e.g. 7/25/2013 00:00:00

var query = Query.And(Query<Log>.GTE(l => l.Date, beginDate), // including
                      Query<Log>.LT(l => l.Date, endDate)); // not including

var result = _logCollection.FindAs<Log>(query);

与 LINQ 相同(MongoDB.Driver.Linq 命名空间):
var result = from l in _logCollection.AsQueryable()
             where l.Date >= beginDate && l.Date < endDate
             select l;

关于c# - mongodb C# 比较没有时间的日期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17834700/

10-16 21:00