获取Json条目的数据类型

时间:2019-01-23 14:44:47

标签: json vb.net types

我从我们的数据提供者那里得到了一个Json文件,但没有任何有关内部数据的数据类型的信息。 Json仅包含数据,一个条目看起来像这样(这是调查数据,一个条目是一个人的数据):

{"data":["4482359","12526","2014 Company Y","2","3","1"]}

我反序列化了文件,现在将其放在对象中,但是所有条目都是字符串。我想将其导入数据库,但每个条目都应具有最适合它的数据类型。例如。 1是int16,2014公司Y是字符串。实际上,我只有Int16和String,仅此而已。为了将其导入数据库,我特别需要等效的Sql Server数据类型。不幸的是,由于每个查询的数据顺序都不相同,因此无法将数据类型硬编码到“表创建命令”中。例如。首先,我收到具有上述结构的Survey 1数据。但是也许几天后,我需要像这样的其他数据

{"data":["4482359","2","3","1","12526","2015 Company X"]}

反序列化Json数据我有一个对象(RootObject),带有一个名为data的List(字符串)。第一个字符串为“ 4482359”,第二个字符串为“ 2”,第三个字符串为“ 3”,依此类推。

Public Class RootObject
    Public Property data As List(Of String)
End Class

Public Class RootObjectDatatype
    Private _rootObject As RootObject

    Public Sub New(ByRef rootObject As RootObject)

        For Each str As String In rootObject.data
            If str > 0 And str < 50000 Then
                jsonDatatype.Add("Int")
            Else
                jsonDatatype.Add("Varchar(" & str.Count & ")")
            End If
        Next

    End Sub

    Public Property jsonDatatype As List(Of String)

End Class

但这还行不通。

0 个答案:

没有答案