Hallo zusammen,
Ich hätte ein kleines Problem, und zwar lasse ich mir Daten über ein PHP Script von einer Datenbank ausgeben. Das ganze im JSON Format.
Nun möchte Ich die Daten in mein VB Projekt "einlesen" ICh hatte bereits google bemüht und bin auf diesen Post gestoßen:
Zugriff aus JSON via API
Dies hatte Ich getestet leider Bekomme ICh immer eine Fehlermedlung "Newtonsoft.Json.JsonReaderException: "Error reading JObject from JsonReader. Current JsonReader item is not an object: StartArray. Path '', line 1, position 2." bei dieser Zeile:
Die Ausgabe der Abfrage ist: [{"Serial":"2018141201P"},{"Serial":"2019230101"},{"Serial":"2019020203"},{"Serial":"2019888888"},{"Serial":"2020290207"},{"Serial":"2020160401"},{"Serial":"2020030901"}]
hier noch der geänderte QuellCode:
Hättet Ihr da zufällig eine Lösung wie Ich an die einzelnen Werte Komme ? Bzw. Wo mein Fehler liegt ?
Ich hätte ein kleines Problem, und zwar lasse ich mir Daten über ein PHP Script von einer Datenbank ausgeben. Das ganze im JSON Format.
Nun möchte Ich die Daten in mein VB Projekt "einlesen" ICh hatte bereits google bemüht und bin auf diesen Post gestoßen:
Zugriff aus JSON via API
Dies hatte Ich getestet leider Bekomme ICh immer eine Fehlermedlung "Newtonsoft.Json.JsonReaderException: "Error reading JObject from JsonReader. Current JsonReader item is not an object: StartArray. Path '', line 1, position 2." bei dieser Zeile:
Die Ausgabe der Abfrage ist: [{"Serial":"2018141201P"},{"Serial":"2019230101"},{"Serial":"2019020203"},{"Serial":"2019888888"},{"Serial":"2020290207"},{"Serial":"2020160401"},{"Serial":"2020030901"}]
hier noch der geänderte QuellCode:
VB.NET-Quellcode
- Imports Newtonsoft.Json
- Imports Newtonsoft.Json.Linq
- Imports System.IO
- Imports System.Net
- Public Class Form1
- Private Async Function GetData() As Task
- Using wC As New WebClient() With {.Proxy = Nothing}
- Dim data As String = String.Empty
- Try
- data = Await wC.DownloadStringTaskAsync("https://www.meine-url.de/abfrage.php?id=959835898")
- Catch ex As Exception
- Return
- End Try
- If data <> String.Empty Then
- Dim j As JObject = JObject.Parse(data)
- For i = 0 To j.SelectToken("results").Count() - 1
- MessageBox.Show(j.SelectToken("results")(i).SelectToken("Serial").ToString())
- Next
- End If
- End Using
- End Function
- Private Async Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- Await GetData()
- End Sub
- End Class
Hättet Ihr da zufällig eine Lösung wie Ich an die einzelnen Werte Komme ? Bzw. Wo mein Fehler liegt ?