à l'aide de XmlArrayItem attribut sans XmlArray sur Serializable de classe C#

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 le [Serializable] 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 le [XmlArray("configuration")] 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 sérialiser ce la façon dont je le veux, avec de multiples <credentials> nœuds à l'intérieur du nœud racine simple <configuration>? Je voulais le faire sans avoir à mettre en œuvre 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>