Upravená odpověď:
Uvědomil jsem si, že již existuje oficiální způsob, jak získat dotaz Mongo z dotazu LINQ (měl jsem to vědět!). Musíte přenést IQueryable
var linqQuery = from e in collection.AsQueryable<Entity>() where e.Name == "test" select e;
var mongoQuery = ((MongoQueryable<Entity>)linqQuery).GetMongoQuery();
Původní odpověď:
V tuto chvíli neexistuje žádný oficiálně podporovaný způsob, jak toho dosáhnout, ale v blízké budoucnosti máme v úmyslu usnadnit zjištění, na jaký dotaz MongoDB byl dotaz LINQ namapován.
Krátkodobě můžete použít následující nezdokumentované interní metody, abyste zjistili, na jaký dotaz MongoDB je dotaz LINQ mapován:
var linqQuery = from e in collection.AsQueryable<Entity>() where e.Name == "test" select e;
var translatedQuery = (SelectQuery)MongoQueryTranslator.Translate(linqQuery);
var mongoQuery = translatedQuery.BuildQuery();
V určitém okamžiku však možná budete muset přejít z těchto nezdokumentovaných metod na oficiálně podporované metody (nedokumentované metody se mohou v budoucnu změnit nebo přejmenovat).