[英]Cannot deserialize a 'BsonDocument from BsonType 'Array'
嘗試運行以下代碼:
var doc = BsonDocument.Parse(rawjson);
其中rawjson是:
[{"PersonName":"Jim Test"}]
返回以下錯誤:
Cannot deserialize a 'BsonDocument' from BsonType 'Array'.
根據大多數在線json驗證程序,rawjson似乎有效。 還有其他方法可以使用Mongodb C#驅動程序將其解析為BsonDocument嗎?
由於您不確定確切的rawjson
數據類型, rawjson
我假設您的意思是字符串。
BsonDocument.Parse()方法的手冊指定它接受string
作為參數。
要么,您的“原始json”可能是JSON文檔的字符串:
var rawjson = "{'PersonName': 'Jim Test'}";
Console.WriteLine(BsonDocument.Parse(rawjson));
或者,它可以是字符串格式的JSON文檔數組:
string[] rawjson = { "{'PersonName': 'Jim Test'}" };
Console.WriteLine(BsonDocument.Parse(rawjson[0]));
或者,如果您的原始json字符串實際上是數組文檔的字符串形式:
var rawjson = "[{'PersonName': 'Jim Test'}]";
string[] separatingChars = { "[", ",", "]" }; // split on these chars
string[] docs = rawjson.Split(separatingChars, System.StringSplitOptions.RemoveEmptyEntries );
foreach (string doc in docs) {
Console.WriteLine(BsonDocument.Parse(doc));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.