ADO. net : pb de boucle!

adeath Messages postés 23 Date d'inscription vendredi 19 septembre 2003 Statut Membre Dernière intervention 9 août 2006 - 2 mars 2004 à 15:45
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 - 2 mars 2004 à 19:41
Salut

Voici mon code super simplifié pour que tout le monde comprenne:
dim dreader as sqlclient.sqlSqlDataReader = objetcommand.ExecuteReader

While dreader.Read()
'du code
While dreader.Read() and ' autre condition
'encore de code
end while
end while

Le probleme, c'est que lors du second test, le dreader passe une ligne et lorsque il revient au premier test il en passe une seconde!
Au bout du compte mon programme saute des lignes et ne traite donc pas la totalité de ma table

Si il y a une facon spéciale d'effectuer ce genre de boucle en ADO .net aidez moi SVP
Merci d'avance

1 réponse

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
2 mars 2004 à 19:41
c'est normal car tu fais deux fois ta boucle et tu dois incrementer de 1 dans ta boucle je me rappelle plus comment fonctionne un datareader et comme je n'ai pas ta source en entier je vais te proposer une solution alternative :

dim dreader as sqlclient.sqlSqlDataReader = objetcommand.ExecuteReader

While dreader.Read()
'du code
dim dreader2 as sqlclient.sqlSqlDataReader = objetcommand.ExecuteReader
While dreader2.Read() and ' autre condition
'encore de code
end while
end while



Normalement ca marche, mais la solution est tres deconseillé car elle va etre beacoup plus lourde que necessaire je suppose si tu veux que je l'optimise donne moi ta source au complet

@+

Cyril (Alias Jesusonline)
0
Rejoignez-nous