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 に答える