Так я этот код, написанный ...vb.net GridView не заполняя должным образом
Public Class PrikazUgovora
Private myConn As SqlConnection
Private myCmd As SqlCommand
Private Sub btnPretraziUgo_Click(sender As System.Object, e As System.EventArgs) Handles btnPretraziUgo.Click
Dim tblKorisnik As New DataTable
myConn = New SqlConnection(Pom.GetConnString())
myCmd = myConn.CreateCommand
myCmd.Parameters.AddWithValue("KliUgoPick", DateTimeUgovora.Value)
myCmd.CommandText = "select * from klijent"
Try
myConn.Open()
Dim reader As SqlClient.SqlDataReader = myCmd.ExecuteReader()
'test to confirm data received
Dim dt = New DataTable()
reader.Read()
dt.Load(reader)
DataGridViewUgo.DataSource = dt
DataGridViewUgo.AutoGenerateColumns = True
DataGridViewUgo.Refresh()
Catch ex As Exception
MessageBox.Show(ex.Message, "Error")
Finally
If myConn.State = ConnectionState.Open Then
myConn.Close()
End If
End Try
End Sub
End Class
И проблема в том, что у меня есть пять записей, но по какой-то странной причине мой GridView заполняет только четыре, в результате чего первый из таблицы не показал один с ID = 1
То же самое происходит, если я пишу выбрать * из klijnet где kli_id = 1 ...
Забавно, что в SQL этот запрос работает как шарм ...
Have вы поставите точку останова после 'dt.Load()' линии и используя отладчик, чтобы увидеть, что 'dt.Rows.Count' равно? –
Почему вы используете datareader ... Я бы поискал SQL Data Adapter – logixologist