DataTableReader Constructores

Definición

Inicializa una nueva instancia de la clase DataTableReader.

Sobrecargas

Nombre Description
DataTableReader(DataTable)

Inicializa una nueva instancia de la DataTableReader clase mediante el uso de datos del proporcionado DataTable.

DataTableReader(DataTable[])

Inicializa una nueva instancia de la DataTableReader clase utilizando la matriz de DataTable objetos proporcionada.

DataTableReader(DataTable)

Inicializa una nueva instancia de la DataTableReader clase mediante el uso de datos del proporcionado 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)

Parámetros

dataTable
DataTable

del DataTable que el nuevo DataTableReader obtiene su conjunto de resultados.

Se aplica a

DataTableReader(DataTable[])

Inicializa una nueva instancia de la DataTableReader clase utilizando la matriz de DataTable objetos proporcionada.

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

Parámetros

dataTables
DataTable[]

Matriz de DataTable objetos que proporciona los resultados para el nuevo DataTableReader objeto.

Ejemplos

En el ejemplo siguiente, el método TestConstructor crea dos DataTable instancias. Para demostrar este constructor para la DataTableReader clase , el ejemplo crea un nuevo DataTableReader basado en una matriz que contiene los dos DataTablesy realiza una operación sencilla, imprimiendo el contenido de las primeras columnas a la ventana de la consola. Para probar esta aplicación, cree una nueva aplicación de consola y pegue el código de ejemplo en el archivo recién creado.

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

En la ventana Consola se muestran los siguientes resultados:

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

Comentarios

Si debe crear un DataTableReader basado en todos o en un subconjunto de las tablas dentro de un elemento específico DataSet, llame al DataSetmétodo de CreateDataReader . Si desea crear una nueva DataTableReader instancia basada en un grupo de DataTable instancias que no estén relacionadas de otra manera, use este constructor. También puede aprovechar este constructor para reorganizar la ordenación de dentro DataTablesDataTableReaderde , si su ordenación dentro de su origen DataSet no satisface sus necesidades.

Se aplica a