Просто потому, что (в моем коде) иногда выглядит, что sqlDataReader открыт, и говорит мне, что «уже есть открытый считыватель данных»
Я решил поставить эту строку: If Not SqlReader.IsClosed Then SqlReader.Close()
Select Case PreviousRecord
Case True
SqlComm = New SqlCommand("Select * from " & tmpName & " where FuelOrderValid = '" & True & "' Order by FuelLoadDate", ReportsSQLConn)
Case False
SqlComm = New SqlCommand("Select * from " & tmpName & " where FuelOrderValid = '" & True & "' And FuelOrderID = '" & ordNum & "' Order by FuelLoadDate", ReportsSQLConn)
End Select
If Not SqlReader.IsClosed Then SqlReader.Close()
If SqlComm.Connection.State = Data.ConnectionState.Open Then
SqlReader = SqlComm.ExecuteReader(CommandBehavior.KeyInfo)
Else
SqlComm.Connection.Open()
SqlReader = SqlComm.ExecuteReader(CommandBehavior.KeyInfo)
End If
Но теперь, когда дело доходит до выполнения инструкции
If Not SqlReader.IsClosed Then SqlReader.Close()
Выдает ошибку:
Object Variable Not Set To An Instance Of An Object
Я действительно не могу понять, почему это делает.
Пожалуйста, есть кто-нибудь, чтобы помочь мне?