Ik denk niet dat er een manier is om dit te doen zonder de IMongoQuery . Het goede nieuws is dat je people . kunt casten naar een MongoQueryable<Person> en verkrijg de IMongoQuery vanaf daar:
var people = db.GetCollection<Person>("People")
.AsQueryable().Where(x => x.Sessions.Any(y => y.SessionDate != null));
var mqPeople = (MongoQueryable<Person>)people;
var query = mqPeople.GetMongoQuery().ToJson();
Bewerken:
Het lijkt erop dat dit alleen werkt voor de Where clausule wel.