gpt4 book ai didi

c# - $push 操作期间非文档嵌套数组的排序规范

转载 作者:可可西里 更新时间:2023-11-01 10:49:15 24 4
gpt4 key购买 nike

给定一个文档结构:

[{
_id: ObjectId("someId"),
Property: {
CollectionProperty: [{
ItemKey: 28,
StringArray: [
"ItemA",
"ItemB"
]
}]
}
}]

在 mongo shell 中执行以下操作可以满足我的要求:

db.getCollection('collection').updateOne(
{
"_id" : ObjectId("someId"),
"Property.CollectionProperty.ItemKey" : 28
},
{ $push :
{
"Property.CollectionProperty.$.StringArray" : {
$each : [ "AItemA" ],
$sort : 1
}
}
});

但是,我无法在文档或网络上的任何地方找到如何在 C# 代码中重现 $sort 命令。如果它有字段,我可以通过使用“field”:1 来重现,但不是像那样的非文档数组。

描述这种排序的 mongodb 文档在这里: MongoDB Sort Elements that are not documents

到目前为止,这是我在 C# 中的内容:

Builders<DataType>.Update.PushEach("Property.CollectionProperty.$.StringArray",
new[] { "AItemA" }, null, null, ???)));

那个???是我不知道该怎么做...有人有什么建议吗?

TIA

最佳答案

这显然目前不受支持,但计划在 C# 驱动程序的 future 版本中发布,如此处记录:

https://jira.mongodb.org/browse/CSHARP-1271

关于c# - $push 操作期间非文档嵌套数组的排序规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44508841/

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