Flere readers på samme tid?
Hi, har følgende funktion, som jeg bruger til at loade data ind på min form:Private Function LoadConfiguration(ByVal Serial As String)
Dim PartsCmd As SqlClient.SqlCommand = New SqlClient.SqlCommand("SELECT * FROM t_configurationparts WHERE ConfigurationPartConfiguration = '" & Serial & "' ORDER BY ConfigurationPartDate", objSqlConn)
Dim PartsRdr As SqlClient.SqlDataReader = PartsCmd.ExecuteReader
ListView1.Items.Clear()
Do While PartsRdr.Read
ListView1.Items.Add(PartsRdr("ConfigurationPartSerial"))
ListView1.Items(ListView1.Items.Count - 1).Tag = PartsRdr("ConfigurationPartId")
ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(PartsRdr("ConfigurationPartText"))
Loop
PartsRdr.Close()
PartsCmd.Dispose()
End Function
Problemer er, at når jeg loader formen, vil jeg gerne have den til at hente den sidste nye record, hvilket jeg gør sådan her:
Private Sub frmConfigurations_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim objSqlCmd As SqlClient.SqlCommand = New SqlClient.SqlCommand("SELECT * FROM t_serials WHERE SerialIsConfiguration = 1 ORDER BY SerialConfigurationDate", objSqlConn)
Dim objSqlRdr As SqlClient.SqlDataReader = objSqlCmd.ExecuteReader
If objSqlRdr.Read Then
ActivateConfiguration()
LoadConfiguration(objSqlRdr("SerialNo"))
Else
DeactivateConfiguration()
End If
objSqlRdr.Close()
objSqlCmd.Dispose()
End Sub
Men når jeg kører mit program får jeg at vide, at PartsRdr ikke kan tilknyttes connectionen, da der allerede er en reader tilknyttet (objSqlRdr) - hvordan kommer jeg uden om dette problem - kan man hvikelig ikke læse fra en database hvis man er igang med at læse et andet sted ?