2014-05-12 35 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不填充?您可以讓你的代碼更簡單)