2017-11-25 1 views
-2

Dies sind die Daten, was ichJson Deserialize mit mehreren Wert

{ 
    "s": "ok", 
    "t": [ 
    1509469200, 
    1509469500, 
    1509469800, 
    1509470100, 
    1509470400, 
    1509470700, 
    1509471000 
    ], 
    "r": [ 
    6040100, 
    5955000, 
    5955000, 
    5999600, 
    5999400, 
    5999000, 
    5960100 
    ], 
    "v": [ 
    3.06575198, 
    7.92733913, 
    6.04823174, 
    0.87041449, 
    0.27879491, 
    0.31525724, 
    0.08880846 
    ] 
} 

bekommen kann ich s-Wert mit diesem Code erhalten und senden Sie es „ok“.

Dim pData = JsonConvert.DeserializeObject(response_) 
Dim status As String = pData("s") 

Aber ich habe Fehler für andere Werte, wie t, r, s, v als Array oder eine Liste von String aus diesem json zu bekommen?

Dim time_ As List(Of String) = pData("t") 

Unable to cast object of type 'Newtonsoft.Json.Linq.JArray' to type 'System.Collections.Generic.List`1[System.String]'. 
+0

'Aber ich habe Fehler für andere values' Pflege zu teilen, was dieser Fehler war und Was genau hast du probiert? Bitte lies [ask] und nimm die [Tour] – Plutonix

+0

Erstelle eine Klasse mit Eigenschaften, zu denen json deserialisieren kann. – Codexer

Antwort

0

Erstellen Sie eine Klasse

Public Class JSON_result 
    Public Property s As String 
    Public Property t As Integer() 
    Public Property r As Integer() 
    Public Property v As Double() 
End Class 

dann die json Deserialisieren dieser Klasse zu widersprechen.

Dim obj = JsonConvert.DeserializeObject(Of JSON_result)(response_jsonString) 

Jetzt können Sie Zugriff auf Eigenschaften wie

obj.s und Array-Elemente wie obj.t(0) obj.r(0) obj.v(0)

+0

HINWEIS für andere Besucher: Sie müssen die Bibliothek importieren 'Imports Newtonsoft.Json' –