我有这个字符串:
1=True&2=150+minutes&3=True&4=True&5=Continuing+to+smoke
我怎样才能把它放到这样的数组或对象中:
[1] => True
[2] => "150 minutes"
etc?
我试过这个:
<HttpPost()>
Function GetQuizScore(ByVal data As String) As JsonResult
'Debug.Print(data)
Dim jss = New JavaScriptSerializer
Dim dict = jss.Deserialize(Of List(Of String))(data)
Debug.Print(String.Join(", ", dict))
Return Json(data)
End Function
但是,它给了我一个错误:
Invalid JSON primitive: True&2=150+minutes&3=True&4=True&5=Continuing+to+smoke.
感谢您的帮助。
最佳答案
您拥有的字符串是 QueryString,而不是 JSON 字符串。因此,您可以使用
将其转换为 NameValueCollection。
例子:
Dim s = "1=True&2=150+minutes&3=True&4=True&5=Continuing+to+smoke"
Dim parsed = HttpUtility.ParseQueryString(s)
For Each key In parsed
Console.WriteLine(key & ": " & parsed(key))
Next
输出:
1: True
2: 150 minutes
3: True
4: True
5: Continuing to smoke
关于asp.net-mvc - VB.NET 将查询字符串解析为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12781829/