0
我有一個BSON文件,有沒有什麼辦法可以告訴Json.Net將其反序列化爲一個動態對象,如this example for JSON?是否有可能使用Json.Net將BSON文件反序列化爲動態對象?
我有一個BSON文件,有沒有什麼辦法可以告訴Json.Net將其反序列化爲一個動態對象,如this example for JSON?是否有可能使用Json.Net將BSON文件反序列化爲動態對象?
是的,只是反序列如下在Deserialize from BSON所述指令類型dynamic
(或JToken
或ExpandoObject
):
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
}
原型fiddle。
要直接從一個文件流,使用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
}