Teile von JSON-Dateicontent nicht richtig zugänglich

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von C0RE.

    Teile von JSON-Dateicontent nicht richtig zugänglich

    Hallo liebe VB Programmierer.

    Ich habe folgenden JSON String:

    Quellcode

    1. {
    2. "@type": "messages",
    3. "total_count": 1,
    4. "messages": [
    5. {
    6. "@type": "message",
    7. "id": 2097152,
    8. "sender": {
    9. "@type": "messageSenderChat",
    10. "chat_id": -1001181624345
    11. },
    12. "chat_id": -1001181624345,
    13. "is_outgoing": true,
    14. "is_pinned": false,
    15. "can_be_edited": true,
    16. "can_be_forwarded": true,
    17. "can_be_deleted_only_for_self": false,
    18. "can_be_deleted_for_all_users": true,
    19. "can_get_statistics": true,
    20. "can_get_message_thread": false,
    21. "is_channel_post": true,
    22. "contains_unread_mention": false,
    23. "date": 1615689033,
    24. "edit_date": 0,
    25. "interaction_info": {
    26. "@type": "messageInteractionInfo",
    27. "view_count": 1,
    28. "forward_count": 0
    29. },
    30. "reply_in_chat_id": 0,
    31. "reply_to_message_id": 0,
    32. "message_thread_id": 0,
    33. "ttl": 0,
    34. "ttl_expires_in": 0,
    35. "via_bot_user_id": 0,
    36. "author_signature": "",
    37. "media_album_id": "0",
    38. "restriction_reason": "",
    39. "content": {
    40. "@type": "messageText",
    41. "text": {
    42. "@type": "formattedText",
    43. "text": "Hello",
    44. "entities": []
    45. }
    46. }
    47. }
    48. ],
    49. "@extra": "bf76193d-f870-4209-b355-c75110823bfc"
    50. }


    Nun möchte ich per Newtonsoft.Json.Linq die Value von "messages.content.text.text" erhalten. Leider ist es mir nicht möglich diesen zu erhalten.

    Quellcode

    1. Dim JSONToken As JObject = TryCast(JObject.Parse(JSONString), JObject)
    2. Dim messsages = JSONToken.SelectToken("messages.content.text.text")

    Auch per For each schleife versucht. Leider findet er nicht den content??

    Wie komme ich an die value?


    Vielen dank für eure tipps.
    messages ist ein Array, siehst du an den eckigen Klammern ... eventuell klappt folgendes: messages[0].content.text.text
    Setzt aber voraus, das messages immer mindestens ein Item hat und wenn es mehrere Items hat, wird nur das erste benutzt, ist also nicht die besten Vorgehensweise.