2014-02-03 2 views
0

десериализации XML, XMLElement, XmlAttributeRead XmlElement и XmlAttribute

XML:

<PET> 
    <RES>Correct</RES> 
    <PC version="1.1"> 
    <MESSAGE conf="1">SMS</DESC> 
    <URL>www.google.com</URL> 
    </PC> 
    <PRU>200</PRU> 
</PET> 

Класс:

[XmlRoot("PET")] 
public class Prueba 
{ 
    [XmlElement("RES")] 
    public string Res { get; set; } 

    [XmlElement("PRU")] 
    public string Pru { get; set; } 

    //PC Attribute 
    //MESSAGE element AND Attribute 
    //URL element 
} 

Метод:

public void Prueba() 
{ 
    Prueba p = new Prueba(); 

    XmlSerializer serializer = new XmlSerializer(p.GetType()); 
    using (StreamReader reader = new StreamReader("Repositories/Local/Prueba.xml")) 
    { 
     p = (Prueba)serializer.Deserialize(reader); 
    } 
} 

Как прочитать атрибут <PC> и MESSAGE элемент (атрибут тоже) и URL?

+0

Используйте XSD.exe Полезность визуальной студии для создания классов C# из вашего XML. – Samuel

ответ

1

Добавить

[XmlElement("PC")] 
    public PC pc { get; set; } 

И создать класс для ПК,

[XmlRoot("PET")] 
public class PC 
{ 
    [XmlElement("MESSAGE")] 
    public string MES { get; set; } 

    [XmlElement("URL")] 
    public string url { get; set; } 
} 
+0

Хороший ответ, спасибо! – user1909412

Смежные вопросы