ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

MongoDB ArrayFilter 更新子文档失效的 ObjectId 类型陷阱

MongoDB ArrayFilter 更新子文档失效的 ObjectId 类型陷阱

用 arrayFilters 按子文档的 _id 更新嵌套数组元素,shell 里跑得好好的,换成 C# 驱动就"执行成功但一行没改"。这是一个典型的 BSON 类型不匹配问题,而 MongoDB 对此非常安静。

问题现象

集合结构如下,Teams 里嵌了一个 Players 数组:

db.Teams.find()[{_id:ObjectId('000000000000000000002000'
返回列表