0

我想知道如何检查特定索引中有一行以避免以下异常:

System.IndexOutOfRangeException

例如 :

if (dtNew != null && dtNew.Rows.Count > 0 )
{
    if (dtNew.Rows[i][0] != null)
    {
        row["newEmp"] = dtNew.Rows[i][0];
    }
    else
    {
        row["newEmp"] = 0;
    }
}

如果dtNew有刚刚a one rowi = 3

4

1 回答 1

2

好吧,如果你想去行i,你需要把你的支票从

&& dtNew.Rows.Count > 0

&& dtNew.Rows.Count > i

目前您只检查是否有任何行 - 即是否dtNew.Rows[0]有效。

(您肯定需要检查dtNew存在null吗?这是一个有效的程序状态吗?同样,该行存在但第 0 列不被填充是否有效?您可以使您的代码更简单。)

于 2014-05-12T09:25:45.827 回答