我有一个在MongoDB中的文档,看起来像这样:
{
"Id":"123",
"Product": "test",
"Tags":[
{
"Name": "name",
"Categories": [
{
//item
},
{
//item
}
]
},
{
"Name": "name",
"Categories": [
{
//item
},
{
//item
}
]
}
]
}
现在,我需要添加一个新的
Item
,并且它需要被添加到该Product
的所有Tags
元素的类别中,使用它的Id
。
例如,当我插入Item 3
时,文档应该是这样的:{
"Id":"123",
"Product": "test",
"Tags":[
{
"Name": "name",
"Categories": [
{
//item 1
},
{
//item 2
},
{
//item 3
}
]
},
{
"Name": "name",
"Categories": [
{
//item 1
},
{
//item 2
},
{
//item 3
}
]
}
]
}
同样地,如果要删除一个项目,也需要从所有类别中删除。是否有一种方法可以使用C# MongoDB Driver在不拉取对象并“手动”更新它们的情况下完成此操作?
Push
解决方案上遇到了这个错误:“写操作导致错误。\r\n无法使用部分(Tags of Tags.$[].Categories)来遍历元素。
- Liran Friedmandb.version()
以检查版本。 - s7vrdb.adminCommand( { setFeatureCompatibilityVersion: "3.6" } )
才能使用新的数组过滤器... - Liran Friedman