Je veux XML dans le format suivant:
<configuration><!-- Only one configuration node -->
<logging>...</logging><!-- Only one logging node -->
<credentials>...</credentials><!-- One or more credentials nodes -->
<credentials>...</credentials>
</configuration>
Je suis en train de créer une classe Configuration
qui a [Serializable]
d'attribut. Pour sérialiser les informations d'identification des nœuds, j'ai le texte suivant:
[XmlArray("configuration")]
[XmlArrayItem("credentials", typeof(CredentialsSection))]
public List<CredentialsSection> Credentials { get; set; }
Cependant, quand je sérialiser ce XML, XML est le format suivant:
<configuration>
<logging>...</logging>
<configuration><!-- Don't want credentials nodes nested in a second
configuration node -->
<credentials>...</credentials>
<credentials>...</credentials>
</configuration>
</configuration>
Si je supprime l' [XmlArray("configuration")]
de la ligne, je reçois le texte suivant:
<configuration>
<logging>...</logging>
<Credentials><!-- Don't want credentials nodes nested in Credentials node -->
<credentials>...</credentials>
<credentials>...</credentials>
</Credentials>
</configuration>
Comment puis-je sérialiser ce la façon dont je le veux, avec de multiples <credentials>
des nœuds dans le seul nœud racine <configuration>
? Je voulais le faire sans avoir à mettre en oeuvre IXmlSerializable
et de faire de la sérialisation personnalisée. C'est ainsi que ma classe est décrite:
[Serializable]
[XmlRoot("configuration")]
public class Configuration : IEquatable<Configuration>