如何在使用官方c#驱动程序插入后从mongo读回自动生成的ID?
发布时间:2020-12-15 17:22:40 所属栏目:百科 来源:网络整理
导读:通过官方c#驱动程序将新文档插入 mongodb之后,如何立即读回生成的_id,以便将其用作其他集合的“外来”键?我知道在sql server中我可以立即读回新插入行的标识列值,所以我需要mongodb中的类似功能. 由于mongo生成的_id不是对象的实际成员,假设您需要对通用bso
通过官方c#驱动程序将新文档插入
mongodb之后,如何立即读回生成的_id,以便将其用作其他集合的“外来”键?我知道在sql server中我可以立即读回新插入行的标识列值,所以我需要mongodb中的类似功能.
由于mongo生成的_id不是对象的实际成员,假设您需要对通用bsondocument执行某些操作? 解决方法
您可以使用findAndModify命令进行upsert以实现相同的效果,而不是通过生成自己的id来完成相同的工作. (为什么麻烦,有一个很好的理由10gen决定使用的方案 – 它可以轻松分片)
findAndModify命令允许您查找或升级(如果它不存在则创建)文档并返回该文档. 一般形式如下: db.runCommand( { findAndModify : <collection>,<options> } ) 你可以阅读更多关于它here. 除了upsert选项之外,您还希望使用new,以便返回新创建的对象. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |