以反向模式运行MongoDB集合

时间:2015-05-19 08:24:19

标签: c# .net mongodb mongodb-.net-driver

我在mongoDB中有一个包含文档的集合“collection_Save” 用于保存在其他集合中的其他文档上发生的操作。它们按数据库中的创建顺序列出。 为了扭转这些操作,我需要从结束到开始运行集合。

这是我无法弄清楚该怎么做的地方。由于MongoCollection没有相当于“反向”方法。

我尝试使用以下代码

创建索引
 collection_Save.CreateIndex(IndexKeys<SaveMongo>.Ascending(_ => _._id));

但我无法弄清楚如何使用它(或者在我的情况下它是否真的有用)。

我找到了可能有用的东西:MongoRestore, skip n first documents

然而,他们没有在c#中工作,而我的低声誉使我无法评论该帖子。

您知道如何以“反向模式”运行集合吗?

1 个答案:

答案 0 :(得分:0)

只需在date字段上创建一个索引,如下所示:

db.collection_Save.createIndex({date: -1})

然后您可以这样查询您的收藏:

db.collection_Save.find().sort({date: -1}).skip(last_n).limit(1)

其中last_n是您要获取的文档的编号(从结尾开始计算)。