0
데이터 테이블의 내용을 문자열로 변환하는 중입니다. 데이터 세트에 12 행과 8 열이 있다고 가정 해보십시오. 결국 Dict에는 12 개의 행이나 96 개의 열이 포함됩니다. 아래 코드에 무엇이 잘못 되었나요? 행을 어떻게 재설정합니까?DataRow의 루프 DataColumn
티아.
Dim ds As DataSet = ClsDB.GetDataSet(sql)
If Not ds Is Nothing AndAlso ds.Tables.Count > 0 Then
Dim row As New List(Of KeyValuePair(Of String, String))
Dim dict As New List(Of KeyValuePair(Of Integer, Object))
Dim dt As DataTable = ds.Tables(0)
Dim i As Integer = 0
For Each dr As DataRow In dt.Rows
For Each dc As DataColumn In dt.Columns
row.Add(New KeyValuePair(Of String, String)(dc.ColumnName, IIf(Not IsDBNull(dr.Item(dc.ColumnName)), dr.Item(dc.ColumnName), "")))
Next
dict.Add(New KeyValuePair(Of Integer, Object)(i, row))
i += i
Next
Return New JavaScriptSerializer().Serialize(dict)
Else
Return "No Data"
End If
'dr'마다 '행'을 다시 초기화해야합니까? – Jodrell
예, 무엇이 간단한 부주의합니다. 너무 많은 것을 생각하십시오. – Gian