Как десериализовать атрибуты XML - PullRequest
0 голосов
/ 22 августа 2011

Я могу создать объект для хранения десериализованного XML-файла.Сопоставить элементы Xml с объектами легко, я просто создаю свойства в классе, соответствующие имени элемента.Но как я могу сопоставить атрибуты Xml с классом.Например, если у меня есть это:

<Typestyle name="" location="" />

Я хочу десериализовать атрибуты name и location в свойствах моего класса?

Ответы [ 3 ]

2 голосов
/ 22 августа 2011

Почему бы не использовать инструмент xsd.exe в .NET Framework SDK для создания кода класса C #, представляющего схему. Затем добавьте эти классы в свой проект, и вы сможете использовать XmlSerializer с этими классами без необходимости писать код класса самостоятельно.

Попробуйте это http://msdn.microsoft.com/en-us/library/x6c1kb0s.aspx

2 голосов
/ 22 августа 2011

Посмотрите на XmlAttributeAttribute класс.

public class TypeStyle
{
    [XmlAttribute("name")]
    public string Name { get; set; }

    [XmlAttribute("location")]
    public string Location{ get; set; }
}
0 голосов
/ 22 августа 2011
public class Typestyle
{
    [XmlAttribute]
    public string name { get; set; }
    [XmlAttribute]
    public string location { get; set; }
}
...