Je suis en train de se rendre à ce résultat lors de la sérialisation XML:Se débarrasser d'un nom de tableau en C# sérialisation XML
<Root Name="blah">
<SomeKey>Eldad</SomeKey>
<Element>1</Element>
<Element>2</Element>
<Element>3</Element>
<Element>4</Element>
</root>
Ou autrement dit - je suis en train de contenir un tableau dans la « racine "élément, à côté des touches supplémentaires.
Ceci est ma tentative grossière:
[XmlRootAttribute(ElementName="Root", IsNullable=false)]
public class RootNode
{
[XmlAttribute("Name")]
public string Name { get; set; }
public string SomeKey { get; set; }
[XmlArrayItem("Element")]
public List<int> Elements { get; set; }
}
Et mon sérialisation:
string result;
XmlSerializer serializer = new XmlSerializer(root.GetType());
StringBuilder sb = new StringBuilder();
using (StringWriter sw = new StringWriter(sb))
{
serializer.Serialize(sw, root);
result = sw.ToString();
}
Cependant, ceci est mon résultat (Suppression de l'espace de noms pour plus de clarté):
<Root>
<SomeKey>Eldad</SomeKey>
<Elements>
<Element>1</Element>
<Element>2</Element>
<Element>3</Element>
</Elements>
</Root>
Est -il un moyen de supprimer la partie "Elements"?
Merci beaucoup, qui fonctionne :-) –
you rock !, merci. –
Avec un dictionnaire, cela ne fonctionne pas car nous devons parcourir les éléments manuellement. :( –