我正在使用C#mongodb驱动程序将Dictionary序列化为嵌入式文档。嵌入式文档类似于:
"Lookup" : [[1234, {
"Name" : "bob",
"Age" : 25,
}], [4567, {
"Name" : "fred",
"Age" : 31,
}]]
是否可以在列表的“密钥”(即1234,4567等)上创建索引?我已经在Lookup上创建了一个索引,但我不确定它是什么创建了一个索引。
我猜测它是整个文档的索引,因为查询:
find ( {"Lookup" : { "$in" : [1234] } } )
与任何内容都不匹配。
谢谢,
答案 0 :(得分:1)
您应该将结构更改为如下所示:
"Lookup" : [
{key:1234, value:{
"Name" : "bob",
"Age" : 25,
}},
{key: 4567, value: {
"Name" : "fred",
"Age" : 31,
}}
]
然后你可以索引{"Lookup.key": 1}
,它会做你想要的。