Deserialisation depuis un fichier XML vers une liste d'objets

Résolu/Fermé
Messages postés
59
Date d'inscription
jeudi 14 avril 2011
Statut
Membre
Dernière intervention
24 avril 2015
-
Messages postés
16739
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
25 janvier 2022
-
Bonjour à tous,

je travaille avec Visual studio express 2013 pour le web et je suis nouveau avec c# et ASP.NET.

J'essaie de désérialiser un fichier XML (test.xml) qui représente le résultat d'une requête sql vers une liste d'objets.

j'espère que vous allez comprendre avec ces bouts de code :

structure du fichier xml :

<ArrayOfResultTemp>
  <ResultTemp>
    <datestat>2015-01-19T17:02:27+01:00</datestat>
    <nom>Magni</nom>
    <indicateur>0</indicateur>
    <action>Connexion</action>
  </ResultTemp>
  <ResultTemp>
    <datestat>2015-01-19T17:02:34+01:00</datestat>
    <nom>Magni</nom>
    <indicateur>0</indicateur>
    <action>Connexion</action>
  </ResultTemp>
.
.
.


Model :

namespace xxxxxxxx.Models
{
    using System;
    using System.Data.Entity;
    using System.Linq;

    public class ResultTemp 
    {
        public DateTime DateStat { get; set; }
        public string Nom { get; set; }
        public string Prestation { get; set; }
        public int  Indicateur { get; set; }
        public string Action { get; set; }                 
    }
   
}


et voici une partie du code :
List<ResultTemp> list = null;
.
.
File.WriteAllText(@"c:\temp\xmlfile.xml", xml);

System.IO.StreamReader file = new 
                              System.IO.StreamReader(@"c:\temp\xmlfile.xml");

XmlSerializer ser = new XmlSerializer(typeof(List<ResultTemp>));

 list = (List<ResultTemp>)ser.Deserialize(file);
  • quand je débogue, je constate que la liste "list" :

soit elle est null et ne contient aucune valeur
soit elle contient des valeurs, mais celle-ci sont nulles aussi.

en gros, comment faire pour avoir une liste d'objets avec les bonnes valeurs ?

je compte sur vous pour m'aider, et merci d'avance

1 réponse

Messages postés
16739
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
25 janvier 2022
796
Bonsoir, je préfère utiliser Linq ToXml, voir ici
https://codes-sources.commentcamarche.net/forum/affich-1561684-c-et-xml#8
Messages postés
59
Date d'inscription
jeudi 14 avril 2011
Statut
Membre
Dernière intervention
24 avril 2015

Merci pour ta réponse,
Messages postés
16739
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
25 janvier 2022
796 >
Messages postés
59
Date d'inscription
jeudi 14 avril 2011
Statut
Membre
Dernière intervention
24 avril 2015

De rien