将system.Object []转换为VB.NET中的Datatable

时间:2014-12-29 11:41:00

标签: json vb.net datatable

我正在尝试反序列化JSON字符串,并使用DataTable将其转换为JsonConvert.DeserializeObject

VB功能:

Public Function DerializeDataTable(ByVal data As String) As DataTable
    Dim json As New JavaScriptSerializer
    Dim j As Object = json.DeserializeObject(data)
    Return j
End Function

例外:

无法将类型为'System.Object []'的对象强制转换为'System.Data.DataTable'。

如何将Json字符串反序列化为datatable

1 个答案:

答案 0 :(得分:4)

您可以使用Json.NET框架。 然后,您可以在案例中使用以下代码

var table = JsonConvert.DeserializeObject<DataTable>(json);
return table;

对于vb.net

Dim dt as DataTable = Json.JsonConvert.DeserializeObject(Of DataTable)(data)

所以你的完整功能将是

Public Function DerializeDataTable(ByVal data As String) As DataTable 
    Dim j As DataTable = Json.JsonConvert.DeserializeObject(Of DataTable)(data)
    Return j
End Function