Wenn ich versuche, ein Klassenelement vom Typ Test zu serialisieren, gibt es ein xml mit root-Element als "testing", das mit XmlRoot gesetzt wird.Serialisierungsklasse mit XmlRoot, Fehler bei Verwendung in Liste
Wenn ich jedoch versuche, ein Element der Klasse Elems zu serialisieren, wird das Testelement mit dem Stammelement "Test" anstelle von "Testen" serialisiert. Diese
[XmlRoot("testing")]
public class Test
{
}
public class Elems
{
public List<Test> how = new List<Test>();
public Elems()
{
how.Add(new Test());
how.Add(new Test());
how.Add(new Test());
}
}
die Ausgabe, wenn Elems serialisiert,
<Elems xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" x
mlns:xsd="http://www.w3.org/2001/XMLSchema">
<how>
<Test />
<Test />
<Test />
</how>
</Elems>
stattdessen das ist, was ich brauche.
<Elems xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" x
mlns:xsd="http://www.w3.org/2001/XMLSchema">
<how>
<testing />
<testing />
<testing />
</how>
</Elems>
Dank
XmlRoot gilt nur, wenn das Objekt die Wurzel - das äußerste Objekt. –
Gibt es eine andere Möglichkeit, bei der die Testklasse als "root" in der Liste serialisiert wird? – Rozuur
Sie können [XmlElement] oder [XmlArrayItem] für das verwenden –