更新:
我有以下的code,其中我试图使用返回
JSON数据,反序列化,并返回1份的数据返回给用户。
I have the following code, where I am trying to use returned
JSON data, deserialize it, and return 1 part of that data back to the user.
<%@ Page Language="VB" Debug="True" EnableViewState="false" %>
<%@ Import Namespace="System.Web.Script.Serialization" %>
<script runat="server">
Class Item
Public Property some_number() As Double
Get
Return m_some_number
End Get
Set(ByVal value As Double)
m_some_number = value
End Set
End Property
Private m_some_number As Double
Public Property some_text() As String
Get
Return m_some_text
End Get
Set(ByVal value As String)
m_some_text = value
End Set
End Property
Private m_some_text As String
Public Property serial_number() As String
Get
Return m_serial_number
End Get
Set(ByVal value As String)
m_serial_number = value
End Set
End Property
Private m_serial_number As String
End Class
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Response.Clear()
Response.Write(set_profiles())
Response.End()
End Sub
Function set_profiles() As String
' get returned json data
Dim strChanged As String = CType(Request.Form("strChanged"), String)
' deserialize returned data
Dim jss = New JavaScriptSerializer()
' assuming i need to change this line now?
Dim dict As Dictionary = jss.Deserialize(List(Of Item))(strChanged)
Return dict("some_number")
End Function
</script>
我不明白如何反序列化到项目
类,那么如何获取数据退了出来。
I don't understand how to deserialize into the Item
class, then how to get the data back out.
您的数据是一个数组,而你试图反序列化到字典。这是行不通的。
Your data is an array, and you're trying to deserialize it into Dictionary. This won't work.
要么改变你的输入数据或将其反序列化到一个数组中。
Either change your input data or deserialize it to an array.
您还可以声明一个类,并用它在反序列化。
You can also declare a class and use it in the deserialization.
C#,不好意思:
class Item
{
public double some_number { get; set; }
public string some_text { get; set; }
public string serial_number { get; set; }
}
和反序列化到列表(项目)