我是 C# MongoDB 驱动程序的新手,并且有一个关于在日期范围内过滤对象的问题。
我的收藏有很多条目,格式如下
{
"_id" : ObjectId("51fa6ab684cc97132cfa4616"),
"startDate" : ISODate("2013-07-16T00:00:00Z"),
"endDate" : ISODate("2013-07-26T00:00:00Z"),
"company" : "ABC"
"amount" : 15
}
我想编写一个查询来根据以下条件过滤集合:("endDate" - "startDate") < 10,这意味着结果对象的结束日期应该小于开始日期的 10 天。
我尝试使用 MongoDB.Driver.Builders.Query 类,但没有任何运气。它可以用 MongoDB.Driver.Builders.Query.Where() 归档吗?因为我想与其他查询联系起来,例如:
var amountQuery = Query.GT("amount", 10).LT(20);
var dateRangeQuery = // Query.XXX()....
var query = Query.And(amountQuery, dateRangeQuery );
var result = collection.Find(query);
或者还有其他方法吗?