For i = 0 to DTName.Rows.count
の値がに等しい場合、最終的にIndexOutOfRangeException
エラーがスローされます。制限は。i
DTName.Rows.count
DTName.Rows.count - 1
すべてのデータ行からすべての値を取得するには、それらをList
:に格納します。
Dim strName As New List(Of String)
For i = 0 to DTName.Rows.count - 1
strName.Add(DTName.Rows(i)("Client Name").Tostring())
Next i
または、次のように使用できますForeach
。
For Each DR As DataRow In DTName.Rows
strName.Add(DR("Client Name").Tostring())
Next
また、次の場合は冗長チェックを削除することをお勧めしますDTName.Rows.Count > 0
編集:strName
として宣言し、string
それに行の値を追加することができます:
For i = 0 to DTName.Rows.count - 1
strName &= (DTName.Rows(i)("Client Name").Tostring() & ",")
Next i
Response.Write(strName)