Gabriel Takyie Ответов: 2

Как отобразить / извлечь значения XML на веб-странице с помощью C# (classes)


это мой xml-файл. я хочу связать их (метку (id), изображение(id)) внутри asp.net когда страница загружена.
<?xml version="1.0" encoding="utf-8" ?>
<Cars>
  <adStarCar>
    <unqNumber>23260</unqNumber>
    <lasMute>2017-02-28</lasMute>
    <DealSafer>
      <name>Gabe T</name>
      <email>gabriel@gmail.com</email>
    </DealSafer>
    <car>
      <carNumber>87-98-AE</carNumber>
      <company>Audi</company>
      <model>A8</model>
    </car>
    <BigImage>
      <imgBig>http://srv2.betterparts.org/images/audi-a8-01.jpg</imgBig>
      <imgBig>http://buyersguide.caranddriver.com/media/assets/submodel/7710.jpg</imgBig>
    </BigImage>
    <SmallImage>
      <imgBig>http://srv2.betterparts.org/images/audi-a8-01.jpg</imgBig>
      <imgBig>http://buyersguide.caranddriver.com/media/assets/submodel/7710.jpg</imgBig>
    </SmallImage>
  </adStarCar>
  <adStarCar>
    <unqNumber>8955</unqNumber>
    <lasMute>2017-01-13</lasMute>
    <DealSafer>
      <name>Richard A</name>
      <email>richard@gmail.com</email>
    </DealSafer>
    <car>
      <carNumber>78-KL-85</carNumber>
      <company>Mercedes</company>
      <model>Maybach</model>
    </car>
    <BigImage>
      <B_imgBig>http://blog.caranddriver.com/wp-content/uploads/2016/02/Mercedes-Maybach-S600-Pullman-Guard-PLACEMENT-626x382.jpg</B_imgBig>
      <B_imgBig>http://zombdrive.com/images/maybach-11.jpg</B_imgBig>
    </BigImage>
    <SmallImage>
      <S_imgSm>http://blog.caranddriver.com/wp-content/uploads/2016/02/Mercedes-Maybach-S600-Pullman-Guard-PLACEMENT-626x382.jpg</S_imgSm>
      <S_imgSm>http://zombdrive.com/images/maybach-11.jpg</S_imgSm>
    </SmallImage>
  </adStarCar>
</Cars>


Что я уже пробовал:

я начинающий специалист, особенно в xml, но я знаю, что это связано с массивом или списком, но я просто не хочу этого делать. Я открыт для любой помощи

Заранее спасибо

2 Ответов

Рейтинг:
1

Gabriel Takyie

спасибо за ваш ответ, но на самом деле я предпочитаю использовать коды(классы) и вызывать их в Load_Page().

Рейтинг:
1

Karthik_Mahalingam

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                string path = Server.MapPath("XMLFile1.xml");
                using (StreamReader reader = new StreamReader(path))
                {
                    XmlSerializer serializer = new XmlSerializer(typeof(Cars));
                    Cars car = (Cars)serializer.Deserialize(reader);
                   string  name =  car.AdStarCar[0].Car.Company;
                   string image = car.AdStarCar[0].BigImage.ImgBig[0];
                } 
            }
        }

[XmlRoot(ElementName = "DealSafer")]
    public class DealSafer
    {
        [XmlElement(ElementName = "name")]
        public string Name { get; set; }
        [XmlElement(ElementName = "email")]
        public string Email { get; set; }
    }

    [XmlRoot(ElementName = "car")]
    public class Car
    {
        [XmlElement(ElementName = "carNumber")]
        public string CarNumber { get; set; }
        [XmlElement(ElementName = "company")]
        public string Company { get; set; }
        [XmlElement(ElementName = "model")]
        public string Model { get; set; }
    }

    [XmlRoot(ElementName = "BigImage")]
    public class BigImage
    {
        [XmlElement(ElementName = "imgBig")]
        public List<string> ImgBig { get; set; }
        [XmlElement(ElementName = "B_imgBig")]
        public List<string> B_imgBig { get; set; }
    }

    [XmlRoot(ElementName = "SmallImage")]
    public class SmallImage
    {
        [XmlElement(ElementName = "imgBig")]
        public List<string> ImgBig { get; set; }
        [XmlElement(ElementName = "S_imgSm")]
        public List<string> S_imgSm { get; set; }
    }

    [XmlRoot(ElementName = "adStarCar")]
    public class AdStarCar
    {
        [XmlElement(ElementName = "unqNumber")]
        public string UnqNumber { get; set; }
        [XmlElement(ElementName = "lasMute")]
        public string LasMute { get; set; }
        [XmlElement(ElementName = "DealSafer")]
        public DealSafer DealSafer { get; set; }
        [XmlElement(ElementName = "car")]
        public Car Car { get; set; }
        [XmlElement(ElementName = "BigImage")]
        public BigImage BigImage { get; set; }
        [XmlElement(ElementName = "SmallImage")]
        public SmallImage SmallImage { get; set; }
    }

    [XmlRoot(ElementName = "Cars")]
    public class Cars
    {
        [XmlElement(ElementName = "adStarCar")]
        public List<AdStarCar> AdStarCar { get; set; }
    }


Graeme_Grant

Как отобразить / извлечь значения XML на веб-странице

Это только готовый XML в классы и не генерирует форму веб-страницы из XML.

Karthik_Mahalingam

- это мой xml. я хочу связать их (метку (id), изображение(id)) внутри asp.net когда страница загружена."

Он хочет заполнить xml-значение элементами управления asp

Буду ждать ответа ОП

Graeme_Grant

да, я читал то же самое. Четкое определение всегда помогает... давайте посмотрим, что он хотел.