我建议你使用JavaScriptSerializer
过DataContractJsonSerializer
。原因如下:
您无需将DataContract
and DataMember
属性与JavaScriptSerializer
使用此数据类
<Serializable> _
Public Class ApplicationItem
Public Property application_id() As String
Get
Return m_application_id
End Get
Set
m_application_id = Value
End Set
End Property
Private m_application_id As String
Public Property application_package() As String
Get
Return m_application_package
End Get
Set
m_application_package = Value
End Set
End Property
Private m_application_package As String
End Class
并使用它反序列化您的jsonText
:
Dim jss As New JavaScriptSerializer()
Dim dict = jss.Deserialize(Of List(Of ApplicationItem))(jsonText)
如果仍要使用DataContractJsonSerializer
,则可以使用以下代码反序列化:
Dim obj As New List(Of ApplicationItem)()
Dim ms As New MemoryStream(Encoding.Unicode.GetBytes(json))
Dim serializer As New System.Runtime.Serialization.Json.DataContractJsonSerializer(obj.[GetType]())
obj = DirectCast(serializer.ReadObject(ms), List(Of ApplicationItem))
ms.Close()
ms.Dispose()
礼貌:二手Telerik代码转换器