如果表没有行,则引发异常

时间:2013-01-08 07:10:21

标签: c# .net vb.net

在下面的if语句中,我需要检查第一个表中的第一行/列是否包含字符串,但如果表没有行,则会出现异常。

例外是:

  

“System.IndexOutOfRangeException = {”位置0没有行。“}”

代码段:

'if the table has no rows then an exception happens here
If myDataSet.Tables(0).Rows(0)(0).ToString <> "MyMessage" then


'do this - redirect

Else

 myDataSet.Tables(0).Rows(0)(0) = "no message"

End If

你能帮帮忙吗?

4 个答案:

答案 0 :(得分:2)

它会引发异常,因为您假设存在一行,其中包含以下语句If myDataSet.Tables(0).Rows(0)(0)

您应该先执行If myDataSet.Tables(0).Rows.Count > 0

检查是否有行

答案 1 :(得分:1)

if..else块包裹在if内:

if myDataSet.Tables(0).Rows.Count > 0 then 
//your code here
end if

答案 2 :(得分:1)

如果结果集中没有行,则无法访问myDataSet.Tables(0).Rows(0)。首先检查行数:

If myDataSet.Tables.Count <> 0 AND myDataSet.Tables(0).Rows.Count <> 0 Then
    ' your code
End If

答案 3 :(得分:0)

您应首先检查您的表格是否有任何行

If myDataSet.Tables(0).Rows.Count <> 0 then

'do stuff