MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie führe ich eine EXPLAIN-Abfrage mit dem 2.4 C# Mongo-Treiber aus?

Laut einem Problem in JIRA von MongoDB Seite wurde es als Out-of-the-Box-Funktion aus der API entfernt.

Glücklicherweise ist es immer noch möglich, indem Sie den Abfragemodifikator in FindOptions angeben :

var options = new FindOptions
{
    Modifiers = new BsonDocument("$explain", true)
};
var explain = await collection.Find(x => true, options)
    .Project(new BsonDocument())
    .FirstOrDefault()
    ?.ToJson();

Ersetzen Sie einfach x => true mit der Abfrage, die Sie profilieren möchten. Ich habe .ToJson() hinzugefügt um einen schönen, für Menschen lesbaren JSON-String zu erhalten.