找不到类型为“ JObject”的公共成员“错误”

时间:2019-07-09 16:43:52

标签: json vb.net deserialization

我正在尝试从WebRequest捕获错误消息,该错误消息在用户输入错误信息时返回400错误请求消息。我想在屏幕上显示消息,并根据this,我应该能够反序列化包含JSON的字符串,然后访问如下错误消息:

    Try
        'My web request is here
    Catch ex As WebException            
        Using resp As HttpWebResponse = ex.Response
            Using data As Stream = resp.GetResponseStream()
                Using reader = New StreamReader(data)

                    Dim bodyContent As String = reader.ReadToEnd()
                    Dim bodyObj = JsonConvert.DeserializeObject(bodyContent)

                    lblMyLabel.Text = bodyObj.error.message
                End Using
            End Using
        End Using
    End Try

但是,我收到一条错误消息:

  

找不到类型为“ JObject”的公共成员“错误”。

如何解决此问题?

1 个答案:

答案 0 :(得分:2)

JObject class没有error属性或方法。假设您的JSON看起来像这样:

{
  "error": {
    "message": "...",
    "status": "...",
    "...": "..."
  },
  "...": "..."
}

然后您将使用:

lblMyLabel.Text = bodyObj("error")("message").ToString()

但是,您应该提供一个响应看起来像的例子,以便我提供确切的例子。