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

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

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

Нужна помощь в десериализации XML
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/" xmlns:yandex="http://news.yandex.ru">
   <channel>
         <item>
              <title>Барнаульский автомобилист переехал пенсионерку на пешеходном переходе</title>
              <link>http://www.bankfax.ru/news/102219/</link>
              <description><p> СОКРАТИЛ </p><p>СОКРАТИЛ</p></description>
              <pubDate>09 Aug 2016 08:33:00 +0600</pubDate>
        </item>
        <item>
             <title>В Октябрьском районе Барнаула загорелся маршрутный автобус</title>
             <link>http://www.bankfax.ru/news/102220/</link>
             <description>
                       <figure class="border left">
                               <img alt="" class="left" float="left" is_border="1" size="200x" src="/files/images/news/2016/08/2016080901.jpg?size=200x" />
                               <figcaption></figcaption>
                       </figure>
                       <p>СОКРАТИЛ</p>
                       <p>СОКРАТИЛ</p>
             </description>
             <pubDate>09 Aug 2016 09:05:00 +0600</pubDate>
        </item>
        <item>
              <title>Транспортная инспекция отменила несколько рейсов в пригород Барнаула из-за разбитых дорог</title>
              <link>http://www.bankfax.ru/news/102221/</link>
              <description>
                     <figure class="border left">
                             <img alt="" class="left" float="left" is_border="1" size="200x" src="/files/images/news/2016/08/2016080902.jpg?size=200x" />
                             <figcaption></figcaption>
                     </figure>
                    <p>СОКРАТИЛ</p>
                    <p>СОКРАТИЛ</p>
                    <p>СОКРАТИЛ</p>
              </description>
              <pubDate>09 Aug 2016 09:45:00 +0600</pubDate>
       </item>
    </channel>
</rss>
Делаю так:
[Serializable()]
    public class Item
    {
        [XmlElement("title")]
        public string Title { get; set; }
 
        [XmlElement("link")]
        public string Link { get; set; }
 
        [XmlElement("pubDate")]
        public string PubDate { get; set; }
 
        [XmlArray("description")]
        [XmlArrayItem("p", typeof(Description))]
        public List<Description> Description { get; set; }
    }
 
    [Serializable()]
    public class Description
    {
        [XmlElement("figure")]
        public string Figure { get; set; }
        [XmlElement("p")]
        public string P { get; set; }
    }
 
    [Serializable()]
    [XmlRoot("rss")]
    public class RSS
    {
        [XmlArray("channel")]
        [XmlArrayItem("item", typeof(Item))]
        public List<Item> Item { get; set; }
    }
А именно - я намудрил тут:
        [XmlArray("description")]
        [XmlArrayItem("p", typeof(Description))]
        public List<Description> Description { get; set; }
    }
 
    [Serializable()]
    public class Description
    {
        [XmlElement("figure")]
        public string Figure { get; set; }
        [XmlElement("p")]
        public string P { get; set; }
    }
 <description>
                     <figure class="border left">
                             <img alt="" class="left" float="left" is_border="1" size="200x" src="/files/images/news/2016/08/2016080902.jpg?size=200x" />
                             <figcaption></figcaption>
                     </figure>
                    <p>СОКРАТИЛ</p>
                    <p>СОКРАТИЛ</p>
                    <p>СОКРАТИЛ</p>
              </description>
Я хочу извлечь <description> как еще один список состоящий из <img> и списка <p>

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

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

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


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

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

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