5

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)));

あなたはなにか考えはありますか?

4

1 に答える 1

12

あなたの日付を含む日付の範囲を照会します。

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;
于 2013-07-24T13:16:36.043 に答える