Получение данных после десериализации JSON - C#

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

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

Пытался найти способ десериализовывать json без добавления лишних структур в проект (как это делается в newtonsoft) при помощи динамичных объектов. Нашел вот такой вот интересный способ. Далее - хуже. Есть JSON:
Листинг программы
  1. {
  2. "response":
  3. [
  4. 2110,
  5. {
  6. "body":"Текст",
  7. "mid":5,"uid":1,
  8. "from_id":9,
  9. "date":3,
  10. "read_state":1,
  11. "out":0
  12. },
  13. {
  14. "body":"Текст",
  15. "mid":4,"uid":2,
  16. "from_id":8,
  17. "date":6,
  18. "read_state":1,
  19. "out":0
  20. },
  21. {
  22. "body":"Текст",
  23. "mid":3,
  24. "uid":3,
  25. "from_id":7,
  26. "date":5,
  27. "read_state":1,
  28. "out":0
  29. },
  30. {
  31. "body":"Текст",
  32. "mid":2,
  33. "uid":4,
  34. "from_id":6,
  35. "date":4,
  36. "read_state":1,
  37. "out":0
  38. },
  39. {
  40. "body":"Текст",
  41. "mid":1,
  42. "uid":5,
  43. "from_id":5,
  44. "date":1,
  45. "read_state":1,
  46. "out":0
  47. }
  48. ]
  49. }
используется код как указано в примере:
Листинг программы
  1. var serializer = new JavaScriptSerializer();
  2. serializer.RegisterConverters( new[] { new DynamicJsonConverter() } );
  3. string json = ...; // тот что выше
  4. dynamic res = serializer.Deserialize( json, typeof( object ) );
десериализуется идеально (результат на экране) но каким образом я могу получить указанные данные? Пытался использовать следующие варианты, все возвращали Microsoft.CSharp.RuntimeBinder.RuntimeBinderException:
Листинг программы
  1. res.response[1].body;
  2. res.response[1][1];
  3. res.response[1][1].body;

Решение задачи: «Получение данных после десериализации JSON»

textual
Листинг программы
  1. res.response[1]["body"];

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


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

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

12   голосов , оценка 4.167 из 5

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

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

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