bonjour à tous

petite question facile pour vous je suppose

j'ai une fonction qui me retourne un sqldatareader apres avoir executer une procedure stockée :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
Public Function ExecuteReader() As SqlDataReader
 
        Dim retour As SqlDataReader
 
        retour = Me.ACommande.ExecuteReader()
        Return retour
 
End Function
la classe concernée gère aussi la connexion à la base (donc j'ai une connexion par objet)

j'appelle ma fonction une première fois, pour remplir un datagrid

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
toto = obj_conn.ExecuteReader()
...
toto.close()
Mon problème c'est que si j'appelle ma fonction une deuixème fois, j'ai le droit à :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
reader déjà ouvert pour cette connexion (qqchose comme ça)
Au premier abord j'aurais tendance à dire qu'il faut que j'instancie une nouvelle fois ma classe de connexion (pour avoir une deuxième connexion cqfd). Mais je voudrais être sûre que le problème ne vient pas du fait que le :

n'a pas d'effet, étant donné que toto est le retour d'une fonction ?

Merci d'avance



[Tag [ASPX][VB.NET] ajouté par freegreg]