0
foreach
を最後の反復で停止する方法を知る必要があります。なぜか分かりませんが、必要以上に繰り返しています。foreachが最後のステップを実行しない方法 - ASP.NET C#
以下はコードです。
var rslista = result.Tables[0];
foreach (DataRow row in rslista.Rows)
{
}
foreach
を最後の反復で停止する方法を知る必要があります。なぜか分かりませんが、必要以上に繰り返しています。foreachが最後のステップを実行しない方法 - ASP.NET C#
以下はコードです。
var rslista = result.Tables[0];
foreach (DataRow row in rslista.Rows)
{
}
は、あなたのforeachループ内のブレークポイントを設定し、あなたがすべきではないと感じ、その上にループされている実際の行を見てみましょう。
時には、newrowオブジェクトがデータテーブルにプリセットされる設定があります。そのような行をスキップするには、データが存在すると予想される列の行状態をチェックするか、NULL値をチェックします。continueコマンドを使用して行をスキップできます。
このコードをコピーアンドペーストしないでください。データの内容を分析し、以下の概念のいずれかが役立つかどうかを判断してください。
DataTable dt = new DataTable();
foreach (DataRow dr in dt.Rows)
{
if (dr.RowState == DataRowState.Added)
continue;
if (dr.RowState == DataRowState.Detached)
continue;
}
データテーブルに存在するすべての行についてループスルーします。空の行がデータテーブルに入力されている可能性があります。私はあなたの問題は、あなたのデータテーブルにデータをロードするか、あなたの中のヌル値を扱うことであると信じています – techspider
明示的な型の代わりに 'var'を持っているので、最後の変数のアドレスが 'row'の現在の値と等しいかどうかをチェックし、ループを単に'中断 'することができます。 – Cody
'foreach(rslista.Rows.CastのDataRow行().Skip(rslista.Rows.Count - 1))' –
Hackerman