我有一個無法反序列化的JSON物件。它失敗的原因是:
Newtonsoft.Json.JsonSerializationException: '無法將當前的JSON物件(例如{"name": "value"})反序列化為'System.Collections.Generic.List1[SampleObj]'型別,因為該型別需要一個JSON陣列。
JSON:
"{"rows":
[
{"ID":1,
"名稱": "Puz"
},
{"ID":2,
"姓名": "Kez"
}
]
}"
我已經嘗試使用Newtonsoft進行如下操作:
var deserializeObject = JsonConvert.DeserializeObject<List<SampleObj>>(jsonString)。
而下面的嘗試是使用JavaScriptSerializer。
JavaScriptSerializer oJS = newJavaScriptSerializer()。
List<SampleObj> deserializeObject = new List<ReportColumns>();
deserializeObject = oJS.Deserialize<List<ReportColumns>>(jsonString)。
但兩者都給出了一個錯誤。
uj5u.com熱心網友回復:
你的反序列化類似乎與提供的JSON結構不匹配。類似這樣的東西應該對你有用:
public class Foo
{
public List< Bar> rows { get; set; }
}
public class Bar
{
public int ID { get; set; }
public string Name { get; set; }
}
Foo deserializeObject = oJS.Deserialize<Foo>(jsonString)。
uj5u.com熱心網友回復:
Newtonsoft可以使用以下命令進行安裝:
PM>Install-Package Newtonsoft.Json -Version 13.0.1
示例用法:
string json = @"{
'電子郵件': '[email protected]',
'Active': true,
'CreatedDate': '2013-01-20T00:00:00Z',
'Roles': [
'用戶',
'管理員
]
}"。
Account account = JsonConvert.DeserializeObject<Account>(json)。
Console.WriteLine(account.Email)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/319226.html
標籤:
上一篇:在Asp.NetCore中通過ModelState清除其中一個欄位的值?
下一篇:如何創建WebApi執行存盤程序
