Bonjour tout le monde.
Je cherche, sans succès, un moyen de faire une sérialisation/dé sérialisation partielle en XML.
Je m'explique, j'ai des classes que je ne peux pas modifier et dont je cherche à effectuer une sérialisation/dé sérialisation en spécifiant les propriétés concernées par la sérialisation.
Voici un exemple pour être plus clair :
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 // Une classe que je veux sérialiser, je ne peux pas la modifier, de quelque façon que ce soit public class MaClassSerialisable { [UnAttributCustom(2)] public string Valeur1 { get; set; } [UnAttributCustom(2)] public string Valeur2 { get; set; } [UnAttributCustom(8)] public string Valeur3 { get; set; } [UnAttributCustom(8)] public string Valeur4 { get; set; } }
J'aimerai pourvoir sérialiser l'objet mais en spécifiant "2" ou "8", pour que le fichier résultant ne contienne que les propriétés affectées par l'attribut correspondant.
Donc si je spécifie 2, le fichier résultant doit être :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?xml version="1.0" encoding="utf-8"?> <MaClassSerialisable> <Valeur1>bla bla bla</Valeur1> <Valeur2>truc</Valeur2> </MaClassSerialisable>
Seulement voila, je ne trouve pas d'autres solutions que de ré-inventer entièrement le XmlSerializer...
Personne n'aurait une solution à ce problème ? Merci d'avance
EDIT : La demande est pour la sérialisation ET la dé-sérialisation. Les propriétés manquantes dans le fichier XML devront rester à leurs valeur par défaut.
Partager