IndexOutOfRangeException
私が構築している小さなプロジェクトでトリガーされたばかりですが、なぜですか?
ブール条件は次のとおりです。
(messages != null && messages.Rows[0] != null)
私がやろうとしていたのは、これら 2 つのオブジェクトが初期化されているかどうかを確認することですが、既にお気づきのように、これは突然発生しました。
IndexOutOfRangeException
私が構築している小さなプロジェクトでトリガーされたばかりですが、なぜですか?
ブール条件は次のとおりです。
(messages != null && messages.Rows[0] != null)
私がやろうとしていたのは、これら 2 つのオブジェクトが初期化されているかどうかを確認することですが、既にお気づきのように、これは突然発生しました。
Rows
も空かどうかを確認する必要があるようです。のタイプは実際にはわかりませんが、次のRows
ことが必要になる場合があります。
if (messages != null && messages.Rows.Count > 0 && messages.Rows[0] != null)
または、LINQ を使用して、存在する場合は最初の行を取得し、それが null かどうかを確認できます。
if (messages != null && messages.Rows.FirstOrDefault() != null)
(それはいくつかのRows
実装を想定しています。)IEnumerable<T>
T
null にRows[0]
ならない可能性もあり、カウントが 0 より大きいかどうかを確認するだけで済みます。
if (messages != null && messages.Rows.Count > 0)
または:
if (messages != null && messages.Rows.Any())