XML序列化指定XMLELEMENT和xmlattribute一起
问题描述:
考虑: -XML序列化指定XMLELEMENT和xmlattribute一起
[XmlRoot("Book")]
public class Book
{
[XmlAttribute]
public string Title;
[XmlElement]
public string Publisher;
[XmlElement]
public string PublisherReference;
}
当序列化为XML将给
<Book Title="My Book">
<Publisher>Some Publisher</Publisher>
<PublisherReference>XYZ123</PublisherReference>
</Book>
我怎么能拿PublisherReference作为出版商的属性 - 例如
<Book Title="My Book">
<Publisher Reference="XYZ123">Some Publisher</Publisher>
</Book>
答
[XmlRoot("Book")]
public class Book
{
[XmlAttribute]
public string Title;
[XmlElement]
public Publisher Publisher;
}
[Serializable]
public class Publisher
{
[XmlText]
public string Value;
[XmlAttribute]
public string Reference;
}
AZ打我的答案 – azheglov 2010-09-29 16:39:19
感谢 - 这将做到这一点,但任何方式,而无需创建新类的事情 - 只属性可能?不是我想要一根棍子或任何东西......;) – Ryan 2010-09-29 16:43:48
不幸的是,没有额外的课程没有办法做到这一点(据我所知) – 2010-10-04 15:27:17