ciao a tutti, avrei un problema con un datareader; la mia funzione, che ora vi mostrerò è contenuta all'interno di una classe, quando esco da questa, precisamente nel main del mio programma mi ritorna un datareader chiuso.. e quindi non riesco ad accedere agli elementi:
codice:
Public Function crea_dreader(ByVal sql As String)
'Creazione datareader, viene passata la stringa sql da eseguire
Dim objCommand As SqlClient.SqlCommand
Dim objReader As SqlClient.SqlDataReader
Dim cnPath As String
cnPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\cn.txt"
Dim objConnection As New SqlClient.SqlConnection
objConnection.ConnectionString = verNameFile(cnPath)
objConnection.Open()
If (objConnection.State = ConnectionState.Open) Then
objCommand = New SqlClient.SqlCommand(sql, objConnection)
objReader = objCommand.ExecuteReader()
crea_dreader = objReader
'objReader = Nothing
objConnection.Close()
End If
End Function
nel main:
codice:
'Definisco un mio datareader esterno alla classe
'Lo riempio con dataread passato dalla classe
'Leggo il contenuto
Dim objReader As SqlClient.SqlDataReader
objReader = trvDtset.crea_dreader(sql)
While objReader.Read()
MsgBox(objReader.Item(0))
End While