Public Function ConvertRederToTable(ByRef reader As SqlDataReader) As DataTable
Dim iLoop As Integer
Dim dt As DataTable
Dim sTable As DataTable
Dim oDataRow As DataRow
dt = New DataTable
sTable = New DataTable
sTable = reader.GetSchemaTable
For iLoop = 0 To sTable.Rows.Count - 1
dt.Columns.Add(CStr(sTable.Rows(iLoop)("ColumnName")), CType(sTable.Rows(iLoop)("DataType"), System.Type))
Next
While reader.Read
oDataRow = dt.NewRow
For iLoop = 0 To sTable.Rows.Count - 1
oDataRow(iLoop) = reader(CStr(sTable.Rows(iLoop)("ColumnName")))
Next
dt.Rows.Add(oDataRow)
End While
reader.Close()
sTable.Rows.Clear()
Return dt
End Function
本文介绍了一种将SQLDataReader转换为DataTable的方法。通过遍历读取器获取的数据,并将其逐行添加到新的DataTable中,实现从数据库读取的数据到.NET DataTable的转换。

1025

被折叠的 条评论
为什么被折叠?



