Десериализация json - C# (177065)
Формулировка задачи:
Здравствуйте. Есть ответ от сервера в формате json такого вида:
Ранее мне встречались json типа
Такой тип я десериализовал следующим образом:
А как можно десериализовать данный json?
{
"user":{"ip":"192.168.216.11","login":"andi2222","number":12345},
"items":{
"1":{"name":"aaa","number":"","producer":"","measure":"24","suodID":"","foxproID":""},
"2":{"name":"bbb","number":"","producer":"","measure":"24","suodID":"","foxproID":""},
"3":{"name":"ccc","number":"","producer":"","measure":"24","suodID":"","foxproID":""}},
"measures":{
"1":{"name":"ddd","title":"eee"},
"2":{"name":"fff","title":"ggg"},
"3":{"name":"hhh","title":"iii"}},
"number1":{
"1":{"name":"1999","description":"jjj"},
"2":{"name":"2000","description":"kkk"},
"3":{"name":"2001","description":"lll"}},
"number2":{
"1":{"parent":"1","name":"2001","title":"mmm","description":"nnn"},
"2":{"parent":"1","name":"2002","title":"ooo","description":"ppp"},
"3":{"parent":"1","name":"2003","title":"qqq","description":"rrr"}}
}{"user":{"ip":"192.168.216.11","login":"andi2222","number":12345}}Dictionary<string, userClass> userArray = new Dictionary<string, userClass>(); // словарь пользователей
/// <summary>
/// Класс преобразования json для получения данных user
/// </summary>
public class userClass
{
public string ip { get; set; }
public string login { get; set; }
public int number { get; set; }
}
// парсить полученный json с информацией о пользователях:
userArray = JsonConvert.DeserializeObject<Dictionary<string, userClass>>(iJson);Решение задачи: «Десериализация json»
textual
Листинг программы
public class Item
{
public string Name { get; set; }
public string Number { get; set; }
public string Producer { get; set; }
public string Measure { get; set; }
public string SuodID { get; set; }
public string FoxproID { get; set; }
}
public class Measure
{
public string Name {get; set;}
public string Title {get; set;}
public class Number1
{
public string Name {get; set;}
public string Description {get; set; }
}
public class Number2
{
public string Parent {get; set;}
public string Name {get; set;}
public string Title {get; set;}
public string Description {get; set; }
}
public class Response
{
public userClass User {get; set;}
public Dictionary<string, Item> Items {get; set;}
public Dictionary<string, Measure> Measures {get; set; }
public Dictionary<string, Number1> Number1 {get; set;}
public Dictionary<string, Number2> Number2 {get; set;}
}
var response = JsonConvert.DeserializeObject<Response>(iJson);