以下是MongoDB文档中一个条目的链接,该条目描述了如何进行序列编号:http://www.mongodb.org/display/DOCS/Object+IDs#ObjectIDs-SequenceNumbers
我的问题是在C#驱动程序中实现该解决方案的最佳方法是什么。您可以将其作为两步操作,首先转到计数器集合,然后更新主集合。我很好奇你将如何在一步中完成它,就像C#驱动程序的文档一样?
更新:
2步可能是错误的术语。看起来他们已经存储了JavaScript函数,然后只需从插入中调用JavaScript函数。这就是我所说的1步,你如何在插入中调用JavaScript函数?
答案 0 :(得分:1)
该链接的文档绝对不是一步操作。每个insert语句中都有一个方法调用来分配_id字段。这是每次插入两次数据库。
如果您想使这个项目更简单并且您正在使用POCO,那么您可以实现一个自定义的IIdGenerator,如下所示:http://www.mongodb.org/display/DOCS/CSharp+Driver+Serialization+Tutorial。它仍然是两个步骤,但它会对你隐藏(可能不一定是好事)。