JSon的新手,我学会了如何做基本的JSon parings(从这个问题和答案中学习:How to Parse Json children in VB.NET Newtonsoft。
感谢这个问题和答案,我设法使用VB.Net
读取类似的数据但是我的数据与子项目略有不同 - 它有额外的括号,我还没有找到如何阅读子项的方法。
ps:我在原始问题中修改了Json以证明这一点 -
"CcFull": [
[
{
"Email": "sample.cc@emailDomain.com",
"Name": "John Sample"
}
] ,
[
{
"Email": "another.cc@emailDomain.com",
"Name": "Mike Sample"
}
]
],
答案 0 :(得分:1)
由于您的JSON与我在引用的问题中回答的略有不同,您必须稍微区分一些事情。
您的“CcFull”对象实际上是一个数组数组,由[
和]
括号表示。由于冒号后面的第一个符号是一个开括号,它表示一个数组。下一个符号也是一个开括号,所以它是一个数组数组。
要使用Json.Net对象取消引用它,我们必须将项值作为JArray
对象获取。然后我们可以迭代该对象中的数组值,就像在另一个问题中一样。像这样:
Dim results As List(Of JToken) = o.Children().ToList
For Each item As JProperty In results
item.CreateReader()
Select Case item.Name
Case "CC"
Dim strCC = item.Value.ToString
Case "CcFull"
Dim ccArray As JArray = item.Value 'Get the top-level array
Dim strEmail As String
Dim strName As String
For Each subitem As JObject In ccArray.Values
strEmail = subitem("Email")
strName = subitem("Name")
Next
End Select
Next