我有这样的查询:
Dim dr As SqlDataReader
Dim str As String = "SELECT DISTINCT Location_tbl.LocName, Location_tbl.Locid FROM Transaction_tbl"
Dim cmd As New SqlCommand(str, con.connect)
dr = cmd.ExecuteReader
While dr.Read
ChkdLST.Visible = True
ChkdLST.Items.Add(dr("LocName"))
End While
dr.Close()
con.disconnect()
如果读者包含任何数据,那么我只想让chkdlst可见..所以我想在While dr.Read
的阶段检查我的datareader是否为null如果包含数据那么应该可见其他我必须制作ChkdLST .Visible = false ..所以我如何检查while dr.read
是否包含数据
答案 0 :(得分:0)
即使数据阅读器没有返回任何行,它也不会为空。你可能想要:
If dr.HasRows() Then
'Code
End If
如果您的阅读器没有行,您的循环也永远不会执行,因此如果您想在阅读器没有返回任何行时执行特殊逻辑,请确保将其置于Read()
循环之外。