Lorsque vous sérialisez une collection/liste vide avec XmlSerializer, un élément xml est écrit.
Si vous voulez que rien ne soit sérialisé, vous pouvez utiliser ce truc: ajouter une fonction ShouldSerialize..().
Exemple:
public class MaClasse { public List Éléments; public bool ShouldSerializeÉléments() { return Éléments != null && Éléments.Count > 0; } }
Le nom de la fonction est « ShouldSerialize »+<le nom du champ ou propriété de la collection>
XmlSerializer détectera automatiquement cette fonction et lui demandera s’il doit sérialiser ou non le champ ou la propriété, ou non.