Десериализация XML - C# (183874)

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

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

Нужна помощь в десериализации XML
Листинг программы
  1. <rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/" xmlns:yandex="http://news.yandex.ru">
  2. <channel>
  3. <item>
  4. <title>Барнаульский автомобилист переехал пенсионерку на пешеходном переходе</title>
  5. <link>http://www.bankfax.ru/news/102219/</link>
  6. <description><p> СОКРАТИЛ </p><p>СОКРАТИЛ</p></description>
  7. <pubDate>09 Aug 2016 08:33:00 +0600</pubDate>
  8. </item>
  9. <item>
  10. <title>В Октябрьском районе Барнаула загорелся маршрутный автобус</title>
  11. <link>http://www.bankfax.ru/news/102220/</link>
  12. <description>
  13. <figure class="border left">
  14. <img alt="" class="left" float="left" is_border="1" size="200x" src="/files/images/news/2016/08/2016080901.jpg?size=200x" />
  15. <figcaption></figcaption>
  16. </figure>
  17. <p>СОКРАТИЛ</p>
  18. <p>СОКРАТИЛ</p>
  19. </description>
  20. <pubDate>09 Aug 2016 09:05:00 +0600</pubDate>
  21. </item>
  22. <item>
  23. <title>Транспортная инспекция отменила несколько рейсов в пригород Барнаула из-за разбитых дорог</title>
  24. <link>http://www.bankfax.ru/news/102221/</link>
  25. <description>
  26. <figure class="border left">
  27. <img alt="" class="left" float="left" is_border="1" size="200x" src="/files/images/news/2016/08/2016080902.jpg?size=200x" />
  28. <figcaption></figcaption>
  29. </figure>
  30. <p>СОКРАТИЛ</p>
  31. <p>СОКРАТИЛ</p>
  32. <p>СОКРАТИЛ</p>
  33. </description>
  34. <pubDate>09 Aug 2016 09:45:00 +0600</pubDate>
  35. </item>
  36. </channel>
  37. </rss>
Делаю так:
Листинг программы
  1. [Serializable()]
  2. public class Item
  3. {
  4. [XmlElement("title")]
  5. public string Title { get; set; }
  6. [XmlElement("link")]
  7. public string Link { get; set; }
  8. [XmlElement("pubDate")]
  9. public string PubDate { get; set; }
  10. [XmlArray("description")]
  11. [XmlArrayItem("p", typeof(Description))]
  12. public List<Description> Description { get; set; }
  13. }
  14. [Serializable()]
  15. public class Description
  16. {
  17. [XmlElement("figure")]
  18. public string Figure { get; set; }
  19. [XmlElement("p")]
  20. public string P { get; set; }
  21. }
  22. [Serializable()]
  23. [XmlRoot("rss")]
  24. public class RSS
  25. {
  26. [XmlArray("channel")]
  27. [XmlArrayItem("item", typeof(Item))]
  28. public List<Item> Item { get; set; }
  29. }
А именно - я намудрил тут:
Листинг программы
  1. [XmlArray("description")]
  2. [XmlArrayItem("p", typeof(Description))]
  3. public List<Description> Description { get; set; }
  4. }
  5. [Serializable()]
  6. public class Description
  7. {
  8. [XmlElement("figure")]
  9. public string Figure { get; set; }
  10. [XmlElement("p")]
  11. public string P { get; set; }
  12. }
Листинг программы
  1. <description>
  2. <figure class="border left">
  3. <img alt="" class="left" float="left" is_border="1" size="200x" src="/files/images/news/2016/08/2016080902.jpg?size=200x" />
  4. <figcaption></figcaption>
  5. </figure>
  6. <p>СОКРАТИЛ</p>
  7. <p>СОКРАТИЛ</p>
  8. <p>СОКРАТИЛ</p>
  9. </description>
Я хочу извлечь <description> как еще один список состоящий из <img> и списка <p>

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

textual
Листинг программы
  1. <p>Жительница Алтайского края Анна Нуянзина, недавно с трудом вернувшая пятилетнего сына,
  2. <a href="http://www.bankfax.ru/news/102147/">незаконно увезенного</a>

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


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

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

14   голосов , оценка 3.929 из 5

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

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

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