I'm trying to loop through this string but it stops right after the array.
Here is the JSON String
and the codeCode:[ { "@context": "http://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "item": { "@id": "https://www.site.com/", "name": "Home", "image": null } }, { "@type": "ListItem", "position": 2, "item": { "@id": "https://www.site.com/recipes/", "name": "Recipes", "image": null } }, { "@type": "ListItem", "position": 3, "item": { "@id": "https://www.site.com/recipes/80/main-dish/", "name": "Main Dish Recipes", "image": null } }, { "@type": "ListItem", "position": 4, "item": { "@id": "https://www.site.com/recipes/258/main-dish/roasts/", "name": "Roast Recipes", "image": null } } ] }, { "@context": "http://schema.org", "@type": "Recipe", "mainEntityOfPage": "https://www.site.com/recipe/56352/garlic-prime-rib/", "name": "Garlic Prime Rib", "image": { "@type": "ImageObject", "url": "https://imagesvc.site.io/v3/mm/image?url=https%3A%2F%2FFuserphotos%2F6036515.jpg", "width": null, "height": null, "caption": "Garlic Prime Rib" } ]
messagebox says there is only 3 items. how do I get it to see all of it? What am I missing?Code:Dim res As JToken = JToken.Parse(RTBJson.Text) Select Case res.Type Case 1 Case 2 ' we start with an array CollectItems(res.Item(0)) end select Sub CollectItems(ByVal jToken As JToken) Select Case jToken.Type Case JTokenType.Object MessageBox.Show(jToken.Count.ToString) For Each child In jToken.Children(Of JProperty)() CollectItems(child) Next Case JTokenType.Array For Each child In jToken.Children().ToList CollectItems(child) Next Case JTokenType.[Property] Me.GetCase(jToken) ' Next End Select End Sub


Reply With Quote

