Попытка сериализации json с использованием следующего:
<JsonArray>
Public Class NumbersItem
Public Sub New(objTime As Long, objSolValue As Long, objUsageValue As Long)
DetectionTime = objTime
SolValue = objSolValue
UsageValue = objUsageValue
End Sub
Public ReadOnly Property DetectionTime As Long
Public ReadOnly Property SolValue As Long
Public ReadOnly Property UsageValue As Long
End Class
Получение данных и преобразование:
'Get Solar Gen
Dim SolarResultsfound = VATWebClient.UploadString("https://XXXXXX.org/feed/data.json?id=" + SolarID + "&start=" + UNStartTime.ToString + "&end=" + UNEndTime.ToString + "&interval=1300", "")
'Get Usage
Dim UsageResultsfound = VATWebClient.UploadString("https://xxxxxx.org/feed/data.json?id=" + UsageID + "&start=" + UNStartTime.ToString + "&end=" + UNEndTime.ToString + "&interval=1300", "")
Редактировать: данные, которые я получаю, имеют следующий формат в оба запроса, до 3 тыс. наборов каждый.
[[1579617389000,132], [1579617399000,136], [1579617409000,139], [1579617419000,137]]
Редактировать: Затем я хочу объединить оба (и в будущем их будет еще больше) для отправки в диаграммы Google. Я беру unix время (первый столбец) и значение (второй столбец) из первых результатов, а только столбец значений - из второго.
'Create an list from json results
Dim numbers As New List(Of NumbersItem)()
Dim jsonArrays = JArray.Parse(SolarResultsfound)
Dim jsonUsageArrays = JArray.Parse(UsageResultsfound)
For Each array As JArray In jsonArrays.Children()
For Each usage As JArray In jsonUsageArrays
numbers.Add(New NumbersItem(CType(array.First, Long), CType(array.Last, Long), CType(usage.Last, Long)))
Next
Next
И затем я пытаюсь сериализовать следующее.
Dim jsonTxt As String = Newtonsoft.Json.JsonConvert.SerializeObject(numbers)
И получить следующую ошибку
Невозможно привести объект типа 'xxxxxx.NumbersItem' к типу 'System.Collections.IEnumerable'.
У меня такое чувство, что я должен вызывать сериализатор, но не могу найти правильный синтаксис.