【VB.NET】ADO.Net学习(一)DataReader转换为DataSet

Public Function ConvertDataReaderToDataSet(ByVal reader As _
            SqlDataReader) 
As DataSet
            
Dim dataSet As DataSet = New DataSet
            
Dim schemaTable As DataTable = reader.GetSchemaTable()
            
Dim dataTable As DataTable = New DataTable
            
Dim intCounter As Integer
            
For intCounter = 0 To schemaTable.Rows.Count - 1
                
Dim dataRow As DataRow = schemaTable.Rows(intCounter)
                
Dim columnName As String = CType(dataRow("ColumnName"), String)
                
Dim column As DataColumn = New DataColumn(columnName, _
                     
CType(dataRow("DataType"), Type))
                dataTable.Columns.Add(column)
            
Next
            dataSet.Tables.Add(dataTable)
            
While reader.Read()
                
Dim dataRow As DataRow = dataTable.NewRow()
                
For intCounter = 0 To reader.FieldCount - 1
                    dataRow(intCounter) 
= reader.GetValue(intCounter)
                
Next
                dataTable.Rows.Add(dataRow)
            
End While
            
Return dataSet
        
End Function
Ù* <—f`