Bonjour et bonne année.
Il y a certainement une solution toute bête à laquelle je n'ai pas pensé puisque mon problème est très bête.
Je voudrais faire un fichier de paramétrage en XML et notamment une liste de filtre qui ne sont en réalité que de simples chaines. Ce bout de code (pour l'instant très moche mais qui a le mérite d'être simple) est sensé créer un fichier de configuration avec des valeurs de tests.
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 public class Params{ List<String> _filters = new List<String>(); public List<String> Filters { get { return _filters ; } set { _filters = value; } } ... public Params() { _filters.Add("Filtre 1"); _filters.Add("Filtre 2"); _filters.Add("Filtre 3"); ... } ... } public class ParamsExporter { public ParamsExporter() { Params Parameters = new Params(); XmlSerializer writer = new XmlSerializer(typeof(Params)); Stream file = new FileStream("DefaultParameters.xml", FileMode.Create, FileAccess.Write); writer.Serialize(file, Parameters); file.Close(); } }
Cela me génère le fichier avec ce contenu (seulement la partie qui pose problème en réalité)
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <?xml version="1.0"?> <Params xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Filters> <string>Filtre 1</string> <string>Filtre 2</string> <string>Filtre 2</string> </Filters> </Params>
Je voudrais obtenir ceci :
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <?xml version="1.0"?> <Params xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Filters> <Filter>Filtre 1</Filter> <Filter>Filtre 2</Filter> <Filter>Filtre 2</Filter> </Filters> </Params>
J'avais pensé à simplement créer un objet Filter héritant de la class String mais je ne me souvenais plus que cette dernière était déclarée "Sealed".
Au moment où j'écris ce post j'essaie de décorer cette fameuse liste avec des [XMLElement] et autres joyeusetés mais je n'arrive pas à obtenir le résultat souhaité.
Please Help !
Partager