2009-10-21 8 views
7

Compte tenu de la "MagicName" correct (c'était quelque chose comme "CanSerialize"), le code suivant supprimerait xml pour les listes vides.nom magique pour supprimer XmlSerialization d'une liste vide

Quel était ce nom magique?

public class MyClass { 
    public List<int> MyList{ get; set; } 
    public bool MyListMagicName() { return MyList.Count != 0; } 
    public MyClass() { MyList = new List<int>(); } 
} 

Répondre

7

Je chose que vous faites référence à la convention de nommage de la méthode ShouldSerialize*PropertyName*, mais cela ne AFAIK se réfère pas à la sérialisation XML, mais aux propriétés de composant sérialisation dans Windows Forms (je peux me tromper de toute façon). Voir ici: http://msdn.microsoft.com/en-us/library/53b8022e%28VS.71%29.aspx

MISE À JOUR. Il semble que cela fonctionne aussi pour la sérialisation XML, mais c'est une fonctionnalité non documentée: http://horacegoescoding.blogspot.com/2009/04/using-shouldserialize-for-conditional.html

+0

Markdown comment: Je voulais que la partie "ShouldSerialize" soit en gras et la partie "PropertyName" en gras et en italique, non entourée d'astérisques . Assez drôle, la fenêtre d'aperçu affichée en mode édition affiche le formatage souhaité! – Konamiman

+0

Voir aussi: http://www.devolutions.net/articles/serialization.aspx#S222 –

Questions connexes