Bonjour,
J'ai une application qui génére un fichier Excel avec vraiment beaucoup de données dedans. Le problème c'est qu'il est super long à générer (plusieurs minutes), j'ai donc isolé la méthode et débogguer pour voir où cela ralentissais précisément et le bout de code qui ralentit c'est lui :
Comment puis-je optimiser ce bout de code car jettant un oeil je vois mal comment il peut être codé autrement.
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 for (int i = 0; i < produitList.Count; i++) { int total = 0; for (int j = 0; j < filialeList.Count; j++) { ParameterCollection p1 = new ParameterCollection(); p1.Add("Dossier", "165"); p1.Add("Produit", produitList[i]); p1.Add("Filiale", filialeList[j]); dt = ***WebTools.SelectAppQuery("SELECT quantite FROM ProduitCommandeDoc WHERE (pk_idDossier = @Dossier) AND (pk_idProduit = @Produit) AND (pk_idSoc = @Filiale)", p1); if (dt.Rows.Count > 0) { try { int qte = int.Parse(dt.Rows[0]["quantite"].ToString()); total += qte; } catch (Exception) { } oExcelSheet.Cells[startRow + j + 1, i + 3] = dt.Rows[0]["quantite"].ToString(); } else oExcelSheet.Cells[startRow + j + 1, i + 3] = "0"; } oExcelSheet.Cells[startRow + filialeList.Count + 1, i + 3] = total.ToString(); }
Partager