Parsing XML

duxitto Messages postés 275 Statut Membre -  
scriptiz Messages postés 1494 Statut Membre -
Bonjour,
Je développe une application en ASP.NET et C# et je dois parser un fichier xml pour insérer les données extraites dans une bd SQL SERVER.

Le fichier xml comporte des informations sur des users qui, si ne se trouvent pas déjà crées dans la bd doivent etre crées.

 protected void Page_Load(object sender, EventArgs e)
        {
            XmlDocument doc = new XmlDocument();
            doc.Load(Server.MapPath("~/App_Data/version1.0.xml"));
            XmlNodeList nodes = doc.GetElementsByTagName("resultat"); 

            foreach (XmlNode node in nodes)
            {
               
c'est dans cette partie ou je bloque 

            }
           
            
        }

voila le schéma XML

- <analyses>
- <analyse>
- <user>
  <civilite>Mr</civilite> 
  <nom>***</nom> 
  <prenom>***</prenom> 
  <code_cnam>***</code_cnam> (c'est l'identifiant unique de l'utilisateur) 
  <num_telephone_user>***</num_telephone_patient> 
  </user>
     *
     *
     *
  </analyse>
  </analyses>




je bloque à ce stade , merci si vous pouvez me guider ou me donner un lien qui pourrait m'aider.
A voir également:

1 réponse

scriptiz Messages postés 1494 Statut Membre 425
 
Bonjour,

Personnellement je préfère utiliser ceci pour lire les fichiers XML :
XmlTextReader filexml = new XmlTextReader("utilisateurs.xml");


N'oublie pas le using System.Xml; pour pouvoir utiliser cette classe.

Après tu peux faire par exemple ceci pour lire l'entièreté de ton fichiers XML (l'intérieur des balises) :
String contenu = "";
while (filexml.Read())
{
    contenu += filexml.ReadString() + "\n";
}
Console.WriteLine(contenu);


Si tu veux continuer avec ton XmlDocument tu peux lire des données XML en utilisant XmlNodeReader.

Pour la technique que tu as commencer je ne la connais pas et n'ai pas le temps d'en faire un exemple en la découvrant désolé.

PS : voici la doc du XmlTextReader https://docs.microsoft.com/fr-fr/dotnet/api/system.xml.xmltextreader?redirectedfrom=MSDN&view=netframework-4.8
0