如何将属性添加到序列化XML节点?

时间:2009-05-19 12:21:01

标签: c# xml wcf xml-serialization

假设我有一个像这样的C#类:

[XmlRoot("floors")]
public class FloorCollection
{
    [XmlElement("floor")]
    public Floor[] Floors { get; set; }

}

我想序列化它并使用WCF发送到REST API。但在发送之前,我需要以这种方式向楼层节点添加属性:<floors type="array">...</floors>

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

只需将type属性添加到集合类中:

[XmlRoot("floors")]
public class FloorCollection
{
    [XmlAttribute("type")]
    public string Type { get; set; }
    [XmlElement("floor")]
    public Floor[] Floors { get; set; }

}

答案 1 :(得分:2)

如果您的意思是在没有业务代码知道的情况下添加,那么您可能必须使用Message Inspectors在邮件发送之前对其进行修改。