I have a BSON file, is there any way I can tell Json.Net to deserialise that to a dynamic object like in this example for JSON?
Asked
Active
Viewed 290 times
1 Answers
0
Yes, just deserialize as type dynamic
(or JToken
or ExpandoObject
) following the instructions in Deserialize from BSON:
dynamic result;
using (var stream = new MemoryStream(byteArray))
using (var reader = new BsonReader(stream))
{
var serializer = JsonSerializer.CreateDefault();
result = serializer.Deserialize<dynamic>(reader); // Or ExpandoObject or JToken
}
Prototype fiddle.
To stream directly from a file, use a FileStream
:
string path = "bsonData.bson"; // Or whatever
dynamic result;
using (var stream = File.OpenRead(path))
using (var reader = new BsonReader(stream))
{
var serializer = JsonSerializer.CreateDefault();
result = serializer.Deserialize<dynamic>(reader); // Or ExpandoObject or JToken
}

dbc
- 104,963
- 20
- 228
- 340