MongoDB C#查询时间戳小于当前时间

时间:2014-05-01 09:35:26

标签: c# mongodb

我试图从集合中返回文件,其中id = 1且创建的日期小于当前时间。

我尝试了这个,但它没有工作:

var collection = database.GetCollection("test");   
var time = DateTime.Now;
var query2 = new QueryDocument
{
   { "id", 1},
   {{"created_on", {"$lt",time}}
};

此查询有什么问题?

1 个答案:

答案 0 :(得分:3)

您需要$lt子对象的嵌入式文档,但是您忘了创建它:

var query = new QueryDocument {
  { "id", 1 },
  { "created_on", new BsonDocument { { "$lt", time } } }
}

还要考虑使用Query构建器,这可能会使事情更简单:

var query = Query.And(
  Query.EQ("id", 1),
  Query.LT("created_on", time)
);