Bonjour à tous,

Je suis devant un cas de figure assez anodin, je dois sérialiser un export qui n'est pas structuré mais qui a une logique redondante.

Voilà un petit extrait (les commentaires sont de moi ):

Code : 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
33
34
35
 
03/04/2023 //Date de l'exposition
Exposition du grand classique // Nom de l'exposition
243 // Numéro de rue
Rue de LAMBREYAGE // Nom de la rue
59450 // Code postal
Sin-le-Noble // Nom de la ville
Art Contemporain // Catégorie de l'exposition
Matthieu dethé // Nom de l'artiste
45 // Age de l'artiste
France // Lieu de naissance
23 // Œuvres exposées
Benoit Breton
34
France
12
Jean Flou
65
Belgique
53
Street Art 
Nombre 
3 // Nombre d'exposant
Sabart Deco // Catégorie de l'exposition
32
France
14 
Laure Pez
23
Suisse
4
Nombre
2
Total
5 // Nombre d'exposant Total
Ces données ne sont pas réelles mais le principe du fichier est malheureusement bien celui là...

Comme vous pouvez le constater il y a un schéma redondant dans les données.
Mais je ne vois pas comment créer un modèle de sérialisation, sachant qu'en plus le nombre d'artiste par catégorie peut varier

Comment dois-je sérialiser ça sachant que j'ai déjà créé la class suivante :

Code : 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
public class Exposition
{
    public DateTime DateDebut { get; set; }
    public string NomExposition { get; set; }
    public int NumRue { get; set; }
    public string NomRue { get; set; }
    public int CodePostale { get; set; }
    public string NomVille { get; set; }
    public List<Categorie> Categories { get; set; }
 
    public class Categorie
    {
        public string Nom { get; set; }
        public List<Artiste> Artistes { get; set; }
    }
 
    public class Artiste
    {
        public string Nom { get; set; }
        public int Age { get; set; }
        public string Pays{ get; set; }
        public int Oeuvre { get; set; }
    }
Merci pour votre aide.