Vb.net 序列化json-无法强制转换类型为';XXX和x27;输入';System.Collections.IEnumerable';

Vb.net 序列化json-无法强制转换类型为';XXX和x27;输入';System.Collections.IEnumerable';,vb.net,jsonserializer,Vb.net,Jsonserializer,尝试使用以下内容序列化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

尝试使用以下内容序列化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
编辑:我得到的数据在两个请求中都是以下格式,每个请求最多3k集

[[1579617389000132]、[1579617399000136]、[1579617409000139]、[1579617419000137]]

编辑:然后我想将两者结合起来(将来还会有更多)发送到谷歌图表。我从第一个结果中获取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.NumberItem”的对象强制转换为类型为“System.Collections.IEnumerable”


我觉得这一定是我调用序列化程序的方式,但我找不到正确的语法。

对不起,我似乎已经回答了我自己的问题。Wile补充了更多的解释,我发现自己在想是否有可能在同一个google图表中组合多个数据集,是的

生成了两个数据表,如下所示

//setup DT for solar production
var dt1 = new google.visualization.DataTable();
dt1.addColumn('number', 'Date');
dt1.addColumn('number', 'Solar (watts)');
dt1.addRows(@GenResults);

//setup DT for usage
var dt2 = new google.visualization.DataTable();
dt2.addColumn('number', 'Date');
dt2.addColumn('number', 'Usage (watts)');
dt2.addRows(@UseResults);
然后,我将两个数据表合并到一个联接视图中,它就可以工作了

var data = google.visualization.data.join(dt1, dt2, 'full', [[0, 0]], [1], [1]);
谢谢,
Richard。

您能发布一些json的简短示例吗(SolarResultsfound,UsageResultsfound)?谢谢@CruleD,我已经为问题添加了更多细节
var data = google.visualization.data.join(dt1, dt2, 'full', [[0, 0]], [1], [1]);