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

本文关键字:时间 小于 时间戳 查询 MongoDB | 更新日期: 2023-09-27 18:01:00

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

我试过了,但不起作用:

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

这个查询有什么问题?

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

您需要$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)
);