2014-05-12 24 views
0

我想知道如何检查有具体指标,以避免以下情况例外一行:有如何检查特定指数连续避免IndexOutOfRangeException

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! !

+0

你可以使用Contains方法吗? –

+1

使用它的“Count”对它进行迭代 –

+0

循环具有比数据表多的不同计数 –

回答

1

那么,如果你想获得排i,则需要从

&& dtNew.Rows.Count > 0 

支票改为

&& dtNew.Rows.Count > i 

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

(你一定要检查dtNewnull?那是一个有效的程序状态?同样是有效的行存在,但列0不填充?您可以让你的代码更简单)