XmlAttributeAttribute and XmlElementAttribute
本文关键字:XmlElementAttribute and XmlAttributeAttribute | 更新日期: 2023-09-27 18:10:58
我想在一个属性上声明xmllattributeattribute和XmlElementAttribute,这样无论属性是定义为xml元素还是xml属性,xml都可以正确地反序列化。
。鉴于
public class X
{
[XmlElement()]
[XmlAttribute()]
public string Prop
{
get;
set;
}
}
下列任意一个都可以正确反序列化:
<X>
<Prop>XXX</Prop>
</X>
<X Prop="XXX"/>
这可能吗?
您可以像这样引入转发属性
public class X
{
[XmlElement()]
public string Prop
{
get;
set;
}
[XmlAttribute("Prop")]
public string Prop1
{
get { return Prop; }
set
{
if (!string.IsNullOrEmpty(value))
{
Prop = value;
}
}
}
}