如何使用其 objecID 获取单个数组元素文档?例如,集合有一个数组,但该数组有自己的 objectid 和其他属性。
Dc.Collection.FindOne(query);
如果我传递了数组元素 objectid,则无法获取特定的数组文档。
数组是否包含嵌入式文档,如
{
ObjectId : // some ID,
ArrayField : [
{
ObjectId: // id,
key: value
},
{
ObjectId: // id,
key: value2
}
]
}
? 在这种情况下,您可能希望使用点表示法进行查询,例如:
findOne({"ArrayField.key" : value1 })
将匹配此文档。看看这个页面上的第五个代码示例:
http://www.mongodb.org/display/DOCS/Dot+Notation+(Reaching+into+Objects )