我开发了一个简单的 API,它允许您在 MongoDB 集合中构建一组搜索条件。我现在需要能够将此数组转换为实际的 Mongo 查询,而这部分是我遇到极大困难的地方。
理想情况下,我遵循一些允许我执行以下伪代码的语法:
var query = new QueryBuilder();
foreach (var group in groups)
{
switch (group.Condition)
{
case GroupCondition.Or:
query.Or(group.Queries);
break;
case GroupCondition.And:
query.And(group.Queries);
break;
}
}
return myCollection.FindAs(type, query);
我实际上想构建稍微复杂一点的查询,但最终我想要使用上面的伪代码中所见的对象动态构建查询的功能。
如果我对我想要达到的目标不够清楚,请随时向我询问更多细节。