C# 具有2个条件的Mongodb阵列ElemMatch

C# 具有2个条件的Mongodb阵列ElemMatch,c#,mongodb,mongodb-.net-driver,C#,Mongodb,Mongodb .net Driver,我有一个收藏“foo”: 和一个查询: db.foo.find({a: {$elemMatch: {$gte: 5, $lte: 7}}}) 结果是: {a: [4, 6]} 我的问题是在这种情况下如何使用Query.ElemMatch()?我找到了解决问题的方法,希望对其他人有用 Query.ElemMatch("a", Query.And(new QueryDocument("$gte", 5), new QueryDocument("$lte", 7))) 您可以使用C#的集合初始

我有一个收藏“foo”:


和一个查询:

db.foo.find({a: {$elemMatch: {$gte: 5, $lte: 7}}})
结果是:

{a: [4, 6]}

我的问题是在这种情况下如何使用
Query.ElemMatch()

我找到了解决问题的方法,希望对其他人有用

Query.ElemMatch("a", Query.And(new QueryDocument("$gte", 5), new QueryDocument("$lte", 7)))
您可以使用C#的集合初始值设定项语法对其进行一些清理:

Query.ElemMatch("a", new QueryDocument {
    {"$gte", 5}, 
    {"$lte", 7}
})
此链接可能对您有所帮助
Query.ElemMatch("a", new QueryDocument {
    {"$gte", 5}, 
    {"$lte", 7}
})