Парсинг Json - C# (182257)
Формулировка задачи:
Удается получить только update id не могу понять как получить остальные данные.
Подскажите пожалуйста что я делаю не так.
{
"ok":true,
"result":[
{
"update_id":410795694,
"message":{
"message_id":234,
"from":{
"id":162994588,
"first_name":"Vadim",
"last_name":"Yakovets",
"username":"Vex788"
},
"chat":{
"id":162994588,
"first_name":"Vadim",
"last_name":"Yakovets",
"username":"Vex788",
"type":"private"
},
"date":1478271187,
"text":"\u043f\u0440\u0438\u0432"
}
},
{
"update_id":410795695,
"message":{
"message_id":235,
"from":{
"id":162994588,
"first_name":"Vadim",
"last_name":"Yakovets",
"username":"Vex788"
},
"chat":{
"id":162994588,
"first_name":"Vadim",
"last_name":"Yakovets",
"username":"Vex788",
"type":"private"
},
"date":1478271258,
"text":"\u043a\u0430\u043a \u0442\u044b?"
}
},
{
"update_id":410795696,
"message":{
"message_id":236,
"from":{
"id":162994588,
"first_name":"Vadim",
"last_name":"Yakovets",
"username":"Vex788"
},
"chat":{
"id":162994588,
"first_name":"Vadim",
"last_name":"Yakovets",
"username":"Vex788",
"type":"private"
},
"date":1478271300,
"text":"\u043d\u043e\u0440\u043c?"
}
}
]
}[JsonObject(MemberSerialization.OptIn)]
struct MessageObject
{
[JsonProperty("message_id")]
public string message_id { get; set; }
[JsonProperty("id")]
public string id { get; set; }
[JsonProperty("first_name")]
public string first_name { get; set; }
[JsonProperty("last_name")]
public string last_name { get; set; }
[JsonProperty("username")]
public string username { get; set; }
[JsonProperty("type")]
public string type { get; set; }
[JsonProperty("date")]
public string date { get; set; }
[JsonProperty("text")]
public string text { get; set; }
}
private void Form1_Load(object sender, EventArgs e)
{
string jsonString = URLData.GetJson();
MessageBox.Show(jsonString);
if (jsonString != "error")
{
Newtonsoft.Json.Linq.JObject obj = Newtonsoft.Json.Linq.JObject.Parse(jsonString);
MyJsonObject[] objArr = JsonConvert.DeserializeObject<MyJsonObject[]>(obj["result"].ToString());
foreach (MessageObject myJsonObj in objArr)
{
MessageBox.Show("update_id: " + myJsonObj.update_id);
MessageBox.Show("text: " + myJsonObj.text);
MessageBox.Show("username: " + myJsonObj.username);
}
}
else
{
MessageBox.Show("Error!");
}
}Решение задачи: «Парсинг Json»
textual
Листинг программы
public class From
{
public int id { get; set; }
public string first_name { get; set; }
public string last_name { get; set; }
public string username { get; set; }
}
public class Chat
{
public int id { get; set; }
public string first_name { get; set; }
public string last_name { get; set; }
public string username { get; set; }
public string type { get; set; }
}
public class Message
{
public int message_id { get; set; }
public From from { get; set; }
public Chat chat { get; set; }
public int date { get; set; }
public string text { get; set; }
}
public class Result
{
public int update_id { get; set; }
public Message message { get; set; }
}
public class RootObject
{
public bool ok { get; set; }
public List<Result> result { get; set; }
}