Получить значение из данных JSON - PullRequest
0 голосов
/ 06 ноября 2019

У меня есть данные Json, необходимые для получения значений на vb.net

{
    "type": "push",
    "targets": ["stream"],
    "push": {
        "type": "mirror",
        "source_device_iden": "ujzp6Xr9A4asjyjskXPzu8",
        "source_user_iden": "ujzp6Xr9A4a",
        "client_version": 354,
        "dismissible": true,
        "icon": "ok",
        "title": "test",
        "body": "Hi",
        "application_name": "WhatsApp",
        "package_name": "com.whatsapp",
        "notification_id": "1",
        "notification_tag": "y9x5Q2YAI\/pqPhZwbaN6TpoW4eJhe0kAe0HfmWOQyWA=\n",
        "conversation_iden": "{\"package_name\":\"com.whatsapp\",\"tag\":\"y9x5Q2YAI\\\/pqPhZwbaN6TpoW4eJhe0kAe0HfmWOQyWA=\\n\",\"id\":1}"
    }
}

Я пробовал этот код, это ошибка возврата

 Dim json As String = TextBox1.Text
      Dim ser As JObject = JObject.Parse(json)
        Dim data As List(Of JToken) = ser.Children().ToList

        For Each item As JProperty In data
            item.CreateReader()
            Select Case item.Name

                Case "push"
                    For Each msg As JObject In item.Value

                        Dim tyep As String = msg("type")
                        Dim source As String = msg("source_device_iden")

                    Next
            End Select


        Next

System.InvalidCastException:'Невозможно привести объект типа' Newtonsoft.Json.Linq.JProperty 'к типу' Newtonsoft.Json.Linq.JObject '.'

1 Ответ

0 голосов
/ 06 ноября 2019
   Dim json As String = TextBox1.Text
              Dim ser As JObject = JObject.Parse(json)
                Dim data As List(Of JToken) = ser.Children().ToList

                For Each item As JProperty In data
                    item.CreateReader()
                    Select Case item.Name

                        Case "push"
                            For Each msg As JObject In item
        Dim tyep As String = msg("type")
                                Dim source As String = msg("source_device_iden")

                            Next
                    End Select


                Next
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...