【发布时间】:2018-10-20 04:27:15
【问题描述】:
我有一个问题,我需要对数据库中的对象应用过滤器。 这是一个例子:
"Object": {
"Properties" : [
{
"Key" : "Date",
"Value" : "9/12/2017"
},
{
"Key" : "Primary Location",
"Value" : "Moon"
},
{
"Key" : "Requested By",
"Value" : "drei"
},
{
"Key" : "Secondary Location",
"Value" : "Canada"
}
]
}
假设我想找到“主要位置”为“加拿大”的任何对象......我似乎无法弄清楚如何做到这一点。这是我的尝试:
var builder = Builders<Object>.Filter;
FilterDefinition<Object> filter = builder.And(
builder.Eq("Properties.Key", "Primary Location"),
builder.Eq("Properties.Value", "Canada"));
基本上我使用 And Builder 作为键和值,但这并没有将它们组合在一起来执行过滤器。它看到有一个带有“主要位置”的键,并且属性中还有一个带有“加拿大”的值 并将返回上述对象。
我应该如何编写过滤器来过滤相同的值和密钥对?
【问题讨论】: