c# - 使用 'ObjectId' 查询 MongoDB

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

我已将 document 插入 MongoDB,但没有 id。我想通过搜索他们的MongoDB ObjectId来检索它们, 默认分配

这是我的尝试-

var query_id = Query.EQ("_id", "50ed4e7d5baffd13a44d0153");
var entity = dbCollection.FindOne(query_id);
return entity.ToString();

我得到以下错误-

A first chance exception of type 'System.NullReferenceException' occurred

有什么问题?

最佳答案

您需要创建一个 ObjectId 的实例,然后使用该实例进行查询,否则您的查询会将 ObjectId 与字符串进行比较,而无法找到匹配的文档。

这应该可行:

var query_id = Query.EQ("_id", ObjectId.Parse("50ed4e7d5baffd13a44d0153"));
var entity = dbCollection.FindOne(query_id);
return entity.ToString();

关于c# - 使用 'ObjectId' 查询 MongoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14315684/

相关文章:

c# - 在 asp mvc 4 中将 Json 文本解析为 C# 对象

node.js - 通过公共(public)Apache服务器访问服务器局域网中的node.js、mongo DB

javascript - mongo shell --eval 不运行

c# - 一行 RegEx 匹配 6 个字母数字和恰好 2 个字母

c# - 使用 asp.net 将对象传递到不同的页面

c# - Mac OS X Lion 上的屏幕捕获程序,最好在其他操作系统上可移植

c# - 近查询,排序,再分页

c# - 限制嵌套并行循环生成的并行线程总数

c# - 单声道嵌入,从 C 调用 C# 泛型方法

c# - 人工蜂群图书馆