Bonjour à tous,
j'ai un petit soucis de performance il que je fasse une requête sur un fichier XML et après avec un foreach je l'insère dans ma table le problème c'est que j'ai plus de 140000 élément donc c'est très long .
Voici mon code :
Voilà pour ceux qui pourrait m'aider à améliorer la rapidité, je vous remercie d'avance.
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 XDocument docXML = null; try { docXML = XDocument.Load("monfichier.xml"); } catch (Exception e) { MessageBox.Show("Erreur : \n" + e.Message); } var reqElementXML = from variables in docXML.Elements("VAR") where variables.Parent.Parent.Attribute("NAME").Value.StartsWith("SIMU") select new { nom = variables.Attribute("ONAME"), type = variables.Attribute("TYPE"), commentaire = (variables.Attribute("COMMENT") != null) ? variables.Attribute("COMMENT") : null, chemin = variables.Parent.Parent.Attribute("NAME").Value.Split(new char[]{'/'})[1] }; foreach (var element in reqElementXML) { this.cB_VarsTableAdapter.Insert(idChoisi, element.chemin, element.nom, element.type, element.commentaire); }
Partager