Ich habe ein XML des Formats wie hier: http://pastie.org/1311506 (nicht hier einfügen, weil Kommentar-Parser Tags löscht).Wie füge ich einer mit XmlArrayAttribute markierten Sammlung ein Attribut hinzu?
Dieses XML wird serealized/deserialisiert mit dem folgenden Code:
[XmlRoot("products")]
public class Products
{
[XmlElement("label")]
public string Label { get; set; }
[XmlArray("cars")]
[XmlArrayItem("car")]
public Car[] Cars { get; set; }
}
public class Car
{
[XmlAttribute("name")]
public string Name { get; set; }
}
...
var products = new Products
{
Label = "1",
Cars = new[]
{
new Car {Name = "BMW"},
new Car {Name = "Volvo"}
}
};
var serializer = new XmlSerializer(typeof(Products));
var writer = new StringWriter();
serializer.Serialize(writer, products);
Console.WriteLine(writer);
Ich brauche ein zusätzliches Attribut zu <cars>
Knoten genannt type
(wie hier: http://pastie.org/1311514). Wie kann ich es tun?
Mit anderen Worten, wie man Datenklassen (Produkte und Auto und vielleicht auch andere, falls notwendig) definiert, um XML des im zweiten Pasties-Link gezeigten Formats zu analysieren?
"Parser löschen Tags": nicht, wenn Sie es als Code formatiert werden (Einrücken um 4 Leerzeichen oder Strg + K) –