如何使用Json.net在Vb.net中反序列化JSON对象?我从文档中看到如何使用JsonConvert.SerializeObject()
进行简单的转换,如字符串和一个数组。但我不知道如何反序列化这样的东西。我还检查了JSON.net的文档,但所有示例都在C#而不是vb.net。
"Sizes": [
"Small",
"Medium",
"Large"
]
答案 0 :(得分:0)
我认为你的意思是反序列化,这意味着获取一个JSON字符串并将其转换为一个对象实例。
首先你需要一个vb.net类来接收"接收" JSON属性值,例如" Sizes"你有上面的。然后将此类传递给JavaScriptSerializer的实例,并调用方法DeserializeObject。
在上面的示例中,您有一个JSON字符串数组,其值为" Sizes"。您可以将值反序列化为Dictionary(Of String,Object),如下所示:
Dim sizesStr = "{""Sizes"": [""Small"",""Medium"",""Large""]}"
Dim jsSerializer As New JavaScriptSerializer
Dim deSerialized = jsSerializer.DeserializeObject(sizesStr)
Dim sizes As Dictionary(Of String, Object) = CType(deSerialized, Dictionary(Of String, Object))
答案 1 :(得分:0)
您可以使用此模板转换为大多数类型的对象
Dim obj as Object = Json.JsonConvert.DeserializeObject(of Object)(json)
当json变大时,我总是构建一个类来反序列化json对象。