gpt4 book ai didi

c# - 如何在mongodb中选择嵌套文档?

转载 作者:可可西里 更新时间:2023-11-01 09:12:21 24 4
gpt4 key购买 nike

假设我有一个具有这种结构的嵌套文档:

{
"_id": "a125",
"Language": null,
"Name": "Some name",
"Related": [{
"_id": "b125",
"Status": 0,
}, {
"_id": "b126",
"Status": 1,
}]
}

是否可以使用 c# 驱动程序选择 ID 为 b126 的“相关”模型,同时获取父文档 ID (a125)?

我想象的结果应该是这样的:

{
"_id": "a125",
"Related": {
"_id": "b126",
"Status": 1,
}
}

最佳答案

您可以在 positional $ 中使用点符号投影运算符来查找匹配的文档并仅包含匹配的 Related 元素。

在外壳中:

db.test.findOne({'Related._id': 'b125'}, {'Related.$': 1})

在 C# 中执行此操作:

var filter = Builders<BsonDocument>.Filter.Eq("Related._id", "b125");
var projection = Builders<BsonDocument>.Projection.Include("Related.$");
var result = await collection.Find(filter).Project(projection).FirstAsync();

关于c# - 如何在mongodb中选择嵌套文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30299978/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com