数据表返回正确数量的行/记录。但由于某种原因,我无法将我的GridView变为Render ..根本没有显示............
编辑: GridView返回“RowErorrs”和“Has Errors”列。但不是我的数据。
Dim ConnString As String = System.Configuration.ConfigurationManager.ConnectionStrings("oakfratintdbConnectionString").ConnectionString
Dim Conn As New SqlConnection(ConnString)
Dim cmd As New SqlCommand("SELECT * FROM [OFCInterments]", Conn)
Dim DA As New SqlDataAdapter(cmd)
Dim DT As New DataTable
'WHERE ([FirstName] = @FirstName)
cmd.Parameters.AddWithValue("@FirstName", "Mike")
Try
Conn.Open()
DA.SelectCommand = cmd
DA.Fill(DT)
GridView1.DataSource = DT
GridView1.DataBind()
If DT.Rows.Count > 0 Then
Dim NoResultsText As String = DT.Rows.Count.ToString + " records found."
txtStatys.Text = NoResultsText
txtStatys.Visible = True
End If
Catch ex As Exception
Throw ex
Finally
Conn.Close()
DA.Dispose()
Conn.Dispose()
End Try
答案 0 :(得分:2)
GridView返回“RowErorrs”和“Has Errors”列。但不是我的数据。
这不是GridView
的属性,而是DataTable
的属性。
您可以使用DataTable.GetErrors()
检索包含所有行错误的DataTable
。检查每个DataRow
的{{3}}属性,您就知道了异常的原因。您可以在调试器RowError
中完成所有操作。
您应该考虑以下几点:
GridView没有被调度,原因可能是:
RowDataBound
事件和未被捕获的例外?一般建议:
Catch
块来重新抛出异常(即使Throw
单独会更好,因为它会保留堆栈跟踪)。相反,不要抓住它或做一些有用的东西(例如伐木)。