ADO. net : pb de boucle!

Signaler
Messages postés
23
Date d'inscription
vendredi 19 septembre 2003
Statut
Membre
Dernière intervention
9 août 2006
-
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
-
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

Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
28
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)