我在反序列化一些json数据,获取InvalidCastExceptions等时遇到问题。

谁能指出我正确的方向?

这是我要反序列化的json;



这是我的代码;

  Public Class jsTextArea
    Public OrderId As Integer
    Public Name As String
    Public MaxLen As String
  End Class

Dim js As New System.Web.Script.Serialization.JavaScriptSerializer
Dim rawdata = js.DeserializeObject(textAreaJson)
Dim lstTextAreas As List(Of jsTextArea) = CType(rawdata, List(Of jsTextArea))

最佳答案

OrderId是json中的Int(请注意,值周围缺少引号),但是您在“jsTextArea”中将其声明为String。另外,除非将原始数据返回的类型强制转换为List(Of jsTextArea),否则它可能不会显示的代码无效。

更新
要将数据获取到List(Of jsTextArea)中,请尝试以下操作:

    Dim js As New System.Web.Script.Serialization.JavaScriptSerializer
    Dim lstTextAreas = js.Deserialize(Of List(Of jsTextArea))(textAreaJson)

09-09 18:54