【发布时间】:2018-03-13 20:14:24
【问题描述】:
我正在尝试遍历 JArray,但我在 for/next 循环中收到 msg is not declared 错误。
我的 JSON 格式是这样的...
{ "messages":[
{
"id": 123456789,
"sender_id": 1236547890,
"replied_to_id": null,
"created_at": "2017/09/28 15:49:20 +0000",
"network_id": 554477,
"message_type": "update",
"sender_type": "user",
"url": "https://www.example.com",
"web_url": "https://www.example.com/123456789",
"group_id": 7418529,
"body": {
"urls": [
"https://www.facebook.com/blah/blah/blah",
"https://google.com/foo/bar"
],
"parsed": "Sem, imperdiet voluptatibus. Molestias, gravida vehicula, irure suscipit. Dis facilisi laudantium recusandae necessitatibus dolor quaerat quisque! Lectus deserunt taciti magnis, a non eligendi similique? Exercitationem eius corporis. Faucibus eiusmod delectus voluptatum nascetur, alias doloremque sagittis, repellendus laudantium quae, iaculis, cras maecenas fusce suspendisse amet magnam nulla gravida mollis, tempora gravida",
"plain": "Sem, imperdiet voluptatibus. Molestias, gravida vehicula, irure suscipit. Dis facilisi laudantium recusandae necessitatibus dolor quaerat quisque! Lectus deserunt taciti magnis, a non eligendi similique? Exercitationem eius corporis. Faucibus eiusmod delectus voluptatum nascetur, alias doloremque sagittis, repellendus laudantium quae, iaculis, cras maecenas fusce suspendisse amet magnam nulla gravida mollis, tempora gravida",
"rich": "Sem, imperdiet voluptatibus. Molestias, gravida vehicula, irure suscipit. Dis facilisi laudantium recusandae necessitatibus dolor quaerat quisque! Lectus deserunt taciti magnis, a non eligendi similique? Exercitationem eius corporis. Faucibus eiusmod delectus voluptatum nascetur, alias doloremque sagittis, repellendus laudantium quae, iaculis, cras maecenas fusce suspendisse amet magnam nulla gravida mollis, tempora gravida"
},
"thread_id": 956818730,
"client_type": "Zapier",
"client_url": "https://zapier.com/zapbook/example/",
"system_message": false,
"direct_message": false,
"chat_client_sequence": null,
"language": "en",
"notified_user_ids": [],
"privacy": "public",
"attachments": [],
"liked_by": {
"count": 0,
"names": []
},
"content_excerpt": "Sem, imperdiet voluptatibus. Molestias, gravida vehicula, irure suscipit. Dis facilisi laudantium recusandae necessitatibus dolor quaerat quisque! Lectus deserunt taciti magnis, a non eligendi similique? Exercitationem eius corporis. Faucibus eiusmod delectus voluptatum nascetur, alias doloremque sagittis, repellendus laudantium quae, iaculis, cras maecenas fusce suspendisse amet magnam nulla gravida mollis, tempora gravida",
"group_created_id": 7418529
},
{
"id": 987654321,
"sender_id": 3214569870,
"replied_to_id": 123555777,
"created_at": "2017/09/28 15:28:28 +0000",
"network_id": 554477,
"message_type": "update",
"sender_type": "user",
"url": "https://www.example.com",
"web_url": "https://www.example.com/987654321",
"body": {
"parsed": "Veniam quasi sem, neque netus? Eos quae voluptatibus autem optio varius euismod voluptas, voluptatum inventore",
"plain": "Veniam quasi sem, neque netus? Eos quae voluptatibus autem optio varius euismod voluptas, voluptatum inventore",
"rich": "Veniam quasi sem, neque netus? Eos quae voluptatibus autem optio varius euismod voluptas, voluptatum inventore"
},
"thread_id": 956224600,
"client_type": "Web",
"client_url": "https://www.example.com/",
"system_message": false,
"direct_message": false,
"chat_client_sequence": null,
"language": "en",
"notified_user_ids": [],
"privacy": "public",
"attachments": [],
"liked_by": {
"count": 0,
"names": []
},
"content_excerpt": "Veniam quasi sem, neque netus? Eos quae voluptatibus autem optio varius euismod voluptas, voluptatum inventore",
"group_created_id": null
}
]}
这是我试图用来循环 JArray 的代码...
Dim jObj As JObject = JObject.Parse(File.ReadAllText(outputJSONpath & "myFile.json"))
Dim jArr As JArray = CType(jObj("messages"), JArray)
Dim i As Int32 = 0
For Each msg As JObject In jArr
Dim threadID = msg.GetValue("thread_ID")
'Do Work
Next
当我执行jArr.Count 时,它返回 6,341。为什么没有声明味精?如何获取 6,341 msg 中每个 msg 的 thread_ID 值?
【问题讨论】:
-
再次嗨 :) 尝试推断 msg 类型,请参阅 stackoverflow.com/questions/5678909/…
-
感谢您的建议。我尝试了 Option Infer On。 msg 仍未声明。
标签: asp.net json vb.net json.net