DataTableReader Constructors

Definitie

Initialiseert een nieuw exemplaar van de DataTableReader klasse.

Overloads

Name Description
DataTableReader(DataTable)

Initialiseert een nieuw exemplaar van de DataTableReader klasse met behulp van gegevens uit de opgegeven DataTable.

DataTableReader(DataTable[])

Initialiseert een nieuw exemplaar van de DataTableReader klasse met behulp van de opgegeven matrix met DataTable objecten.

DataTableReader(DataTable)

Initialiseert een nieuw exemplaar van de DataTableReader klasse met behulp van gegevens uit de opgegeven DataTable.

public:
 DataTableReader(System::Data::DataTable ^ dataTable);
public DataTableReader(System.Data.DataTable dataTable);
new System.Data.DataTableReader : System.Data.DataTable -> System.Data.DataTableReader
Public Sub New (dataTable As DataTable)

Parameters

dataTable
DataTable

De DataTable waaruit de nieuwe DataTableReader de resultatenset verkrijgt.

Van toepassing op

DataTableReader(DataTable[])

Initialiseert een nieuw exemplaar van de DataTableReader klasse met behulp van de opgegeven matrix met DataTable objecten.

public:
 DataTableReader(cli::array <System::Data::DataTable ^> ^ dataTables);
public DataTableReader(System.Data.DataTable[] dataTables);
new System.Data.DataTableReader : System.Data.DataTable[] -> System.Data.DataTableReader
Public Sub New (dataTables As DataTable())

Parameters

dataTables
DataTable[]

De matrix van DataTable objecten die de resultaten voor het nieuwe DataTableReader object levert.

Voorbeelden

In het volgende voorbeeld maakt de methode TestConstructor twee DataTable exemplaren. Om deze constructor voor de DataTableReader klasse te demonstreren, maakt het voorbeeld een nieuwe DataTableReader op basis van een matrix die de twee DataTablesbevat en voert een eenvoudige bewerking uit, waarbij de inhoud van de eerste paar kolommen naar het consolevenster wordt afgedrukt. Als u deze toepassing wilt testen, maakt u een nieuwe consoletoepassing en plakt u de voorbeeldcode in het zojuist gemaakte bestand.

private static void TestConstructor()
{
    // Create two data adapters, one for each of the two
    // DataTables to be filled.
    DataTable customerDataTable = GetCustomers();
    DataTable productDataTable = GetProducts();

    // Create the new DataTableReader.
    using (DataTableReader reader = new DataTableReader(
               new DataTable[] { customerDataTable, productDataTable }))
    {
        // Print the contents of each of the result sets.
        do
        {
            PrintColumns(reader);
        } while (reader.NextResult());
    }

    Console.WriteLine("Press Enter to finish.");
    Console.ReadLine();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(int));
    table.Columns.Add("Name", typeof(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;
}

private static DataTable GetProducts()
{
    // Create sample Products table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(int));
    table.Columns.Add("Name", typeof(string ));

    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Wireless Network Card" });
    table.Rows.Add(new object[] { 2, "Hard Drive" });
    table.Rows.Add(new object[] { 3, "Monitor" });
    table.Rows.Add(new object[] { 4, "CPU" });
    return table;
}

private static void PrintColumns(DataTableReader reader)
{
    // Loop through all the rows in the DataTableReader
    while (reader.Read())
    {
        for (int i = 0; i < reader.FieldCount; i++)
        {
            Console.Write(reader[i] + " ");
        }
        Console.WriteLine();
    }
}
Private Sub TestConstructor()
   ' Create two data adapters, one for each of the two
   ' DataTables to be filled.
   Dim customerDataTable As DataTable = GetCustomers()
   Dim productDataTable As DataTable = GetProducts()

   ' Create the new DataTableReader.
   Using reader As New DataTableReader( _
      New DataTable() {customerDataTable, productDataTable})

      ' Print the contents of each of the result sets.
      Do
         PrintColumns(reader)
      Loop While reader.NextResult()
   End Using

   Console.WriteLine("Press Enter to finish.")
   Console.ReadLine()

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 Function GetProducts() As DataTable
   ' Create sample Products 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, "Wireless Network Card"})
   table.Rows.Add(New Object() {2, "Hard Drive"})
   table.Rows.Add(New Object() {3, "Monitor"})
   table.Rows.Add(New Object() {4, "CPU"})
   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

In het consolevenster worden de volgende resultaten weergegeven:

1 Mary
2 Andy
3 Peter
4 Russ
1 Wireless Network Card
2 Hard Drive
3 Monitor
4 CPU

Opmerkingen

Als u een DataTableReader tabel moet maken op basis van alle of een subset van de tabellen binnen een specifieke DataSettabel, roept u de DataSetmethode aan CreateDataReader . Als u een nieuw DataTableReader exemplaar wilt maken op basis van DataTable een groep exemplaren die niet anders zijn gerelateerd, gebruikt u deze constructor. U kunt ook van deze constructor profiteren om de volgorde van de DataTables binnenste DataTableReaderte rangschikken als hun volgorde binnen de bron DataSet niet aan uw behoeften voldoet.

Van toepassing op