问题标签 [bsondocument]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1464 浏览

c# - 如何设置 bsonDocument 的 id?

我有一个复杂的类(名为 ArticleData)。现在,当我使用以下代码创建 bsonDocument 时,生成的 bsonDocument 会自动获取文档 ID(即使我尝试自己设置“_id”):

我无法以任何方式修改 ArticleData 类。否则,我可以添加一个字段“_id”并将其设置为我的自定义 ID。

有谁知道我如何将 bsonDocument 的 id 设置为自定义 id?

我编码的目的是将该 bsonDocument 保存到我的 cosmosDb 中。为了以后能够找到我的文档,我想查询我的自定义 ID(唯一的文章 ID)。

更新:现实生活中的例子:

生成的 bson 文件:

0 投票
1 回答
52 浏览

c# - 使用 BsonDocument BsonArray 将包含 json 文档数组的 json 文件插入 ammongodb 集合

我正在研究一种异步读取 json 文件(包含 json 对象数组)内容并将其插入 mongodb 集合的方法,但我无法弄清楚问题所在。调试的时候没有报错,但是我的收藏还是空的。

0 投票
1 回答
54 浏览

mongodb - MongoDb驱动C#过滤器编辑

也许这是一个简单的问题,但我坚持下去,无法继续。

我需要通过 C# 驱动程序查询 MongoDb。我可以使用 FilterDefinition myFilter 轻松生成复杂的过滤器...

但是当我需要编辑它并从中删除一些子句(例如 {“D22”:1666 })时,不知道如何仅使用 FilterDefinition 来执行此操作,而不转换为 json 或字符串。

0 投票
1 回答
2947 浏览

c# - 如何检查 BsonDocument 中是否存在密钥或不使用 Mongodb C# 驱动程序?

我正在使用这样的(BsonDocument)驱动程序接收数据:mongodbC#

现在我想检查这个文档中是否存在键“assigned_to”。所以我尝试了这个:

我收到这样的错误,而不是密钥是否存在的结果:

0 投票
1 回答
178 浏览

c# - 使用 c# (BsonDocument) 解析 xml

下面是我的 xml 文件,我想解析 AttributeSets 元素。想使用 C# 将所有数据存储到 mongoDB 数据库

到目前为止,这是我的代码。

下面是attribute_Set

下面是我想要的输出(mongoDB JsonView)

任何意见和建议将不胜感激。

0 投票
2 回答
300 浏览

c# - 如何将带有 LUUID 值的查询反序列化为 BsonDocument

我正在尝试将带有 LUUID(或本例中的 NUUID)的过滤器反序列化为 BsonDocument:

并得到一个错误:

我了解,LUUID 对 JSON 无效,但是否有可能从我的字符串中获取 BsonDocument?

在我的特殊情况下,我无法实现 MongoDB 嵌套 $elemMatch 查询,就像在这个问题中一样。但我的查询包含标识符:

,我什至无法将其反序列化为 BsonDocument。我的问题有解决办法吗?非常感谢。

0 投票
0 回答
98 浏览

c# - 在 MongoDB.Bson 版本之间转换

我有一个应用程序将 MongoDB C# 驱动程序 (v1.10.xxx) 创建的 BsonDocuments 作为字节数组写入 RabbitMQ。然后我有另一个应用程序,它使用相同的驱动程序来读取 BsonDocument 的字节表示并将其转换回它的对象形式。

然后,我需要将 MongoDB C# 驱动程序升级到 2.3 版,现在我无法将 RabbitMQ 队列中等待的字节读回BsonDocument,结构仍然存在,但值已经消失。

有人对此有想法吗?

负责写入 RabbitMQ 的代码:

对于阅读,我使用:

Writer 应用程序 MongoDB C# 驱动程序版本:v1.10.0.62

阅读器应用程序 MongoDB C# 驱动程序版本:v2.3.0.157

RabbitMQ 记录的开头如下:

\0\0\0\0����\0\0\0\0\0\0\0\f\0\0\0QMongoDB.Bson,版本=1.10.0.62,文化=中性,PublicKeyToken=f686731cfb9cc103 \0\0\0MongoDB.Bson.BsonDocument\0\0\0\t_elements\b_indexes_allowDuplicateNamesBsonValue+ bsonType\0�System.Collections.Generic.List 1[[MongoDB.Bson.BsonElement, MongoDB.Bson, Version=1.10.0.62, Culture=neutral, PublicKeyToken=f686731cfb9cc103]]�System.Collections.Generic.Dictionary2[[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]MongoDB.Bson.BsonType\0\0\0\0\0\0\t\0\0 \0\t\0\0\0\0����MongoDB.Bson.BsonType\0\0\0\avalue _\0\b\0\0\0\0\0\0\0\0 \0�System.Collections.Generic.List`1[[MongoDB.Bson.BsonElement,MongoDB.Bson,版本=1.10.0.62,文化=中性,...

0 投票
1 回答
187 浏览

java - 将 bson 文档转换为字节数组 java

有一个用例,我需要将 org.bson.Document 压缩并存储到缓存中。我正在使用 zstd 压缩,它需要一个字节数组。无法找到将 Document 转换为字节数组的方法。

0 投票
1 回答
83 浏览

c# - 命令聚合失败:来自 mongot :: 的远程错误由 :: \"origin\" 引起,必须是日期、数字或 geoPoint(来自 \"compound.should[1].near\")

我正在使用 MongoDB Atlas 并使用 C# 字典对象创建搜索管道,然后将其序列化为 json,然后将 json 字符串解析为 BsonDocument。

在 $search 阶段,我使用复合中的近对象应该使用原始日期进行排序。

如您所见,我正在为 near 创建一个对象,其中我的起源是 DateTime.UtcNow

这是我将 Dictionary 对象转换为 BsonDocument 的函数

这是我将 Dictionary 对象转换为 Json 然后转换为 Bson 后的 BsonDocument

在这里,我在协议管道中使用它

主要问题是 mongodb 不接受 C# DateTime 作为原始日期。

请指导我如何从我的 C# 代码中给出正确的 MongoDb 日期。

0 投票
0 回答
61 浏览

c# - Mongo - 将带有数组的字典保存到 BsonDocument 中

我在 C# 中有这样的字典:

我把这本字典变成 BsonDocument

现在,bDoc 看起来像这样:

我希望它是这样的:

我可以通过创建 bDoc 来做到这一点,然后:

但我需要在字典中查找“c”,获取数组项,然后执行“设置”

将带有数组的字典转换为 BsonDocment 的最简单方法是什么?