【发布时间】:2015-04-26 19:47:12
【问题描述】:
我正在尝试将类序列化为 XML,并将属性序列化为类的属性,而不是嵌套节点。我正在使用 WebApi 来自动处理 XML 的序列化。
这是我的课:
[DataContract (Namespace="", Name="AttributeTest")]
[Serializable]
public class AttributeTestClass
{
[XmlAttribute("Property")]
[DataMember]
public int Property1 { get; set; }
}
这是我收到的输出(请注意,Property1 不是属性,尽管它被 [XmlAttribute] 装饰):
<AttributeTest xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Property1>123</Property1>
</AttributeTest>
这是我想要接收的输出:
<AttributeTest Property1="123" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
</AttributeTest>
我错过了什么?
【问题讨论】:
-
我不熟悉 WebApi,但您收到的输出看起来像是使用
DataContractSerializer序列化的,而不是您需要的XmlSerializer。检查这是否有帮助:serena-yeoh.blogspot.de/2013/02/… -
@nodots:做到了,谢谢。请发表您的评论作为答案,以便我给予您信任。再次感谢。
标签: c# xml asp.net-web-api