2016-02-11 14 views
7

Die BsonDocument.ToJson()-Methode gibt ungültige JSON-Werte zurück, da ObjectID() und ISODate keine gültigen JSON-Werte sind.Konvertieren von BSON in gültiges JSON

Was ist der beste Weg, um gültige JSON aus einem beliebigen BSON-Dokument zu erhalten?

+1

Ich finde es seltsam, dass [ "streng" -Modus] (https://docs.mongodb.org/manual/reference/mongodb-extended-json /) ist nicht die Standardeinstellung, aber das ist der Fall. Bei einer Schätzung würde ich sagen, dass mehr Benutzer dafür stimmten, die Ausgabe direkt in die MongoDB-Shell "ausschneiden" zu können. –

Antwort

5

Sie können https://groups.google.com/forum/#!topic/mongodb-user/fQc9EvsPc4k für weitere Informationen so etwas wie dieses

var document = new BsonDocument("_id", ObjectId.GenerateNewId()); 
    var jsonWriterSettings = new JsonWriterSettings { OutputMode = JsonOutputMode.Strict }; // key part 
    Console.WriteLine(document.ToJson(jsonWriterSettings)); 

versuchen

+0

Ich tat dies, aber, wenn ich diesen JSON in API zurückgebe, bekomme ich alle nachlaufenden \ in den JSON. Wie man das schafft? –