He desarrollado una API simple que le permite crear una serie de criterios de búsqueda dentro de una Colección MongoDB. Ahora necesito poder convertir esta matriz en una consulta real de Mongo, y esta parte es donde tengo una dificultad extrema.¿Cómo se generan consultas complejas con MongoDB y el controlador C#?
Lo ideal sería que yo después de una sintaxis que permitirá que haga el siguiente pseudocódigo:
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);
realidad quiero construir consultas un poco más compleja, pero al final estoy después de la funcionalidad para construir dinámicamente mis consultas con objetos como se ve en mi pseudo código anterior.
Siéntase libre de preguntarme detalles adicionales si no me he hecho suficientemente claro sobre lo que estoy tratando de lograr.
Así que antes de llegar demasiado lejos, debería considerar el uso de Linq. – kelloti
Lo mismo aquí. Veo que algunas personas usan ejemplos de Query con múltiples expresiones de consulta encadenadas juntas, sin embargo, cuando hago esto como Query.EQ(). GT(); no funciona ya que EQ/GT no devuelve un objeto de consulta. ¿Que me estoy perdiendo aqui? –