2009-05-19 3 views
0

Angenommen ich eine C# Klasse wie diese:Wie fügt man einem serialisierten XML-Knoten ein Attribut hinzu?

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

} 

Und ich will es serialisiert werden und zu einem REST-API WCF senden. Aber bevor ich sende muss ich ein Attribut hinzufügen, um den Stockwerks Knoten auf diese Weise: <floors type="array">...</floors>

Irgendeine Idee?

Antwort

3

Fügen Sie einfach das type-Attribut in Ihrer Sammlung Klasse:

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

} 
2

Wenn Sie meinen, fügte hinzu, dass ohne den Code Unternehmen darüber zu wissen, dann werden Sie wahrscheinlich Message Inspectors zu verwenden, die Nachricht zu ändern, bevor es ist geschickt.