Десериализация json - C# (177065)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. Есть ответ от сервера в формате json такого вида:
Листинг программы
  1. {
  2. "user":{"ip":"192.168.216.11","login":"andi2222","number":12345},
  3. "items":{
  4. "1":{"name":"aaa","number":"","producer":"","measure":"24","suodID":"","foxproID":""},
  5. "2":{"name":"bbb","number":"","producer":"","measure":"24","suodID":"","foxproID":""},
  6. "3":{"name":"ccc","number":"","producer":"","measure":"24","suodID":"","foxproID":""}},
  7. "measures":{
  8. "1":{"name":"ddd","title":"eee"},
  9. "2":{"name":"fff","title":"ggg"},
  10. "3":{"name":"hhh","title":"iii"}},
  11. "number1":{
  12. "1":{"name":"1999","description":"jjj"},
  13. "2":{"name":"2000","description":"kkk"},
  14. "3":{"name":"2001","description":"lll"}},
  15. "number2":{
  16. "1":{"parent":"1","name":"2001","title":"mmm","description":"nnn"},
  17. "2":{"parent":"1","name":"2002","title":"ooo","description":"ppp"},
  18. "3":{"parent":"1","name":"2003","title":"qqq","description":"rrr"}}
  19. }
Ранее мне встречались json типа
Листинг программы
  1. {"user":{"ip":"192.168.216.11","login":"andi2222","number":12345}}
Такой тип я десериализовал следующим образом:
Листинг программы
  1. Dictionary<string, userClass> userArray = new Dictionary<string, userClass>(); // словарь пользователей
  2. /// <summary>
  3. /// Класс преобразования json для получения данных user
  4. /// </summary>
  5. public class userClass
  6. {
  7. public string ip { get; set; }
  8. public string login { get; set; }
  9. public int number { get; set; }
  10. }
  11. // парсить полученный json с информацией о пользователях:
  12. userArray = JsonConvert.DeserializeObject<Dictionary<string, userClass>>(iJson);
А как можно десериализовать данный json?

Решение задачи: «Десериализация json»

textual
Листинг программы
  1. public class Item
  2. {
  3.    public string Name { get; set; }
  4.    public string Number { get; set; }
  5.    public string Producer { get; set; }
  6.    public string Measure { get; set; }
  7.    public string SuodID { get; set; }
  8.    public string FoxproID { get; set; }
  9. }
  10.  
  11. public class Measure
  12. {
  13.    public string Name {get; set;}
  14.    public string Title {get; set;}
  15.  
  16. public class Number1
  17. {
  18.    public string Name {get; set;}
  19.    public string Description {get; set; }
  20. }
  21.  
  22. public class Number2
  23. {
  24.    public string Parent {get; set;}
  25.    public string Name {get; set;}
  26.    public string Title {get; set;}
  27.    public string Description {get; set; }
  28. }
  29.  
  30. public class Response
  31. {
  32.    public userClass User {get; set;}
  33.    public Dictionary<string, Item> Items {get; set;}
  34.    public Dictionary<string, Measure> Measures {get; set; }
  35.    public Dictionary<string, Number1> Number1 {get; set;}
  36.    public Dictionary<string, Number2> Number2 {get; set;}
  37. }
  38.  
  39. var response = JsonConvert.DeserializeObject<Response>(iJson);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут