C# 如果第一个查询没有结果,MongoDB将使用另一个查询

C# 如果第一个查询没有结果,MongoDB将使用另一个查询,c#,mongodb,mongodb-query,C#,Mongodb,Mongodb Query,我想用operator$all在我的MongoDB中查询一个字段,但是如果没有找到结果,我想用operator$in再次查询它 下面是我现在做的事情 var q = Query.All("Field", new BsonArray(listRegexSearch)); var results = collection.Find(q).ToList(); if (results.Count() == 0 || results == null) { q = Query.In("Field",

我想用operator
$all
在我的MongoDB中查询一个字段,但是如果没有找到结果,我想用operator
$in
再次查询它

下面是我现在做的事情

var q = Query.All("Field", new BsonArray(listRegexSearch));
var results = collection.Find(q).ToList();
if (results.Count() == 0 || results == null) {
    q = Query.In("Field", new BsonArray(listRegexSearch))
    results = collection.Find(q).ToList();
}
foreach(var res in results) {
    ... // Code to process the results
}

我是否可以在一个查询中实现它,而不必像我现在所做的那样使用if语句

如果第一个查询的结果为0,您只想执行第二个查询,因此将查询一起进行是不合适的?如果是这种情况,那么您必须在检查第一个查询是否没有结果后执行两个查询。@wdberkeley,那么在检查第一个查询是否返回0结果或null后执行第二个查询就没有其他方法了?这取决于我第一条评论中对我的问题的回答。