.NET XmlSerializer XML формат - PullRequest
1 голос
/ 16 июня 2011

Есть ли способ заставить XmlSerializer сериализовать свойства объекта как атрибуты а не как элементы?

как: Person.Phone = "1 800 CALL ME"

станет:

[Person Phone = "1 800 CALL ME" /]

вместо:

[Персона] [Телефон] 1 800 ЗВОНИТЕ МНЕ [/ Телефон] [/ Персона]

Ответы [ 3 ]

2 голосов
/ 16 июня 2011

Вы можете сделать это так

[Serializable]
public class Person
{         
      [XmlAttribute()]
      public string Phone { get; set;}

      Or

      [XmlAttribute("Phone")]
      public string Phone123 { get;set;}
}
2 голосов
/ 16 июня 2011

Конечно ...

public class Person
{
    [XmlAttribute]
    public string Phone {get;set;}
}

Вы также можете изменить имя / пространство имен и т. Д., Посмотрев на параметры атрибута.

1 голос
/ 16 июня 2011

Используйте атрибут XmlAttribute

...