Расположение JSON с JROCK в VB.NET
Вопрос
Я пытаюсь проанализировать какой -то JSON, я возвращаюсь от службы. Например, он возвращается
{
"error" :
{
"code" : 500,
"message" : "Error Executing Task. Error executing tool.",
"details" : []
}
}
Все, что мне нужно, это текст в поле сообщения. Использование Jayrock, какой вид сости, чтобы добраться до данных. У меня есть:
Dim request As HttpWebRequest
Dim response As HttpWebResponse = Nothing
Dim jarray As Jayrock.Json.JsonObject
request = DirectCast(WebRequest.Create(url), HttpWebRequest)
response = DirectCast(request.GetResponse(), HttpWebResponse)
Dim reader As JsonTextReader = New JsonTextReader((New StreamReader(response.GetResponseStream)))
jarray = Jayrock.Json.Conversion.JsonConvert.Import(reader)
Какой самый эффективный способ получить данные «сообщения»
Решение
Я могу говорить только за себя, но я бы написал это таким образом:
Dim cMessage As String = "{ ""error"" : { ""code"" : 500, " & _
"""message"" : ""Error Executing Task. " & _
"Error executing tool.""," & _
"""details"" : [] " & _
"}" & _
"}"
Dim objResponse As JsonObject
objResponse = CType(JsonConvert.Import(cMessage), JsonObject)
MsgBox( "Last response was: " + objResponse("error")("message") )
PS: не забудьте импортировать Jayrock.json и Jayrock.json.conversion
Не связан с StackOverflow