DataTable.CreateDataReader Method

Returns a DataTableReader corresponding to the data within this DataTable.

Namespace:  System.Data
Assembly:  System.Data (in System.Data.dll)

'Declaration
Public Function CreateDataReader As DataTableReader

Return Value

Type: System.Data.DataTableReader
A DataTableReader containing one result set, corresponding to the source DataTable instance.

The following console application creates a DataTable instance. The example then passes the filled DataTable to a procedure that calls the CreateDataReader method, which iterates through the results contained within the DataTableReader.

Private Sub TestCreateDataReader(ByVal dt As DataTable)
  ' Given a DataTable, retrieve a DataTableReader 
  ' allowing access to all the tables's data: 
  Using reader As DataTableReader = dt.CreateDataReader()
    Do 
      If Not reader.HasRows Then
        Console.WriteLine("Empty DataTableReader")
      Else
        PrintColumns(reader)
      End If
      Console.WriteLine("========================")
    Loop While reader.NextResult()
  End Using 
End Sub 

Private Function GetCustomers() As DataTable
  ' Create sample Customers table, in order 
  ' to demonstrate the behavior of the DataTableReader. 
  Dim table As New DataTable

   ' Create two columns, ID and Name. 
  Dim idColumn As DataColumn = table.Columns.Add("ID", GetType(Integer))
  table.Columns.Add("Name", GetType(String))

  ' Set the ID column as the primary key column.
  table.PrimaryKey = New DataColumn() {idColumn}

  table.Rows.Add(New Object() {1, "Mary"})
  table.Rows.Add(New Object() {2, "Andy"})
  table.Rows.Add(New Object() {3, "Peter"})
  table.Rows.Add(New Object() {4, "Russ"})
  Return table
End Function 

Private Sub PrintColumns( _
   ByVal reader As DataTableReader)

  ' Loop through all the rows in the DataTableReader. 
  Do While reader.Read()
    For i As Integer = 0 To reader.FieldCount - 1
      Console.Write(reader(i).ToString() & " ")
    Next
    Console.WriteLine()
  Loop 
End Sub

The example displays the following output in the console window:

1 Mary

2 Andy

3 Peter

4 Russ

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft