Sdílet prostřednictvím


DataTableReader Konstruktory

Definice

Inicializuje novou instanci DataTableReader třídy .

Přetížení

DataTableReader(DataTable)

Inicializuje novou instanci DataTableReader třídy pomocí dat ze zadané DataTabletřídy .

DataTableReader(DataTable[])

Inicializuje novou instanci DataTableReader třídy pomocí zadaného DataTable pole objektů.

DataTableReader(DataTable)

Zdroj:
DataTableReader.cs
Zdroj:
DataTableReader.cs
Zdroj:
DataTableReader.cs

Inicializuje novou instanci DataTableReader třídy pomocí dat ze zadané DataTabletřídy .

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)

Parametry

dataTable
DataTable

Objekt DataTable , ze kterého nový DataTableReader získá svou sadu výsledků.

Platí pro

DataTableReader(DataTable[])

Zdroj:
DataTableReader.cs
Zdroj:
DataTableReader.cs
Zdroj:
DataTableReader.cs

Inicializuje novou instanci DataTableReader třídy pomocí zadaného DataTable pole objektů.

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())

Parametry

dataTables
DataTable[]

Pole DataTable objektů, které poskytuje výsledky pro nový DataTableReader objekt.

Příklady

V následujícím příkladu metoda TestConstructor vytvoří dvě DataTable instance. Aby bylo možné demonstrovat tento konstruktor pro DataTableReader třídu, ukázka vytvoří nový DataTableReader na základě pole, které obsahuje dvě DataTables, a provede jednoduchou operaci, tisk obsahu z několika prvních sloupců do okna konzoly. Chcete-li otestovat tuto aplikaci, vytvořte novou konzolovou aplikaci a vložte vzorový kód do nově vytvořeného souboru.

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

V okně Konzola se zobrazí následující výsledky:

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

Poznámky

Pokud musíte vytvořit DataTableReader na základě všech tabulek nebo podmnožinu tabulek v rámci konkrétního DataSetobjektu , zavolejte metodu DataSet.CreateDataReader Pokud chcete vytvořit novou DataTableReader instanci založenou na skupině DataTable instancí, které nejsou jinak spojeny, použijte tento konstruktor. Tento konstruktor můžete také využít ke změně uspořádání objektu DataTables v rámci objektu DataTableReader, pokud řazení v rámci zdroje DataSet nevyhovuje vašim potřebám.

Platí pro