Дело тут такое, я пытаюсь распарсить стену социальной сети вконтакте.
У меня получается, но не до конца. Я смог получить 1 сообщение, но как в цикле все это вывести я теряюсь. К тому же хочется вариант элегантный и не затратный по ресурсам. В c# я новичок, зеленый до ужаса. Моя первая программа.
Серверное api отвечает мне во таким ответом.
{
"response": [
5,
{
"id": 235,
"from_id": 00000,
"to_id": 00000,
"date": 1365266153,
"text": "Наконец-то открыл стенку!))",
"comments": {
"count": 0
},
"likes": {
"count": 0
},
"reposts": {
"count": 0
}
},
{
"id": 234,
"from_id": 00000,
"to_id": 000000,
"date": 1365264936,
"text": "тест 4",
"comments": {
"count": 0
},
"likes": {
"count": 0
},
"reposts": {
"count": 0
}
},
{
"id": 233,
"from_id": 0000000,
"to_id": 0000000,
"date": 1365264931,
"text": "тест 3",
"comments": {
"count": 0
},
"likes": {
"count": 0
},
"reposts": {
"count": 0
}
},
{
"id": 232,
"from_id": 000000,
"to_id": 000000,
"date": 1365264926,
"text": "тест 2",
"comments": {
"count": 0
},
"likes": {
"count": 0
},
"reposts": {
"count": 0
}
},
{
"id": 231,
"from_id": 000000,
"to_id": 000000,
"date": 1365264922,
"text": "тест 1",
"comments": {
"count": 0
},
"likes": {
"count": 0
},
"reposts": {
"count": 0
}
}
]
}
Тут массив response у которого элемент 0 содержит количество сообщений, а все остальные элементы это соответственно сами сообщения.
JObject test = JObject.Parse(responseFromVk);
Так я могу добраться до сообщения:
(string)test["response"][1].ToString();
Затем могу его распарсить в c# объект:
vkClientMetro1.Wall getUser = JsonConvert.DeserializeObject<vkClientMetro1.Wall >((string)test["response"][1].ToString());
public class Wall
{
public int id { get; set; }
public int from_id { get; set; }
public int to_id { get; set; }
public int date { get; set; }
public string text { get; set; }
public Comments comments { get; set; }
public Likes likes { get; set; }
public Reposts reposts { get; set; }
}
ну и получить getUser.text но как я и говорил в начале только одно, как все подцепить и сделать это красиво?