Esta documentación está archivada y no tiene mantenimiento.

DataTableReader.NextResult (Método)

Avanza el objeto DataTableReader al conjunto de resultados siguiente, si hay alguno.

Espacio de nombres: System.Data
Ensamblado: System.Data (en system.data.dll)

public override bool NextResult ()
public boolean NextResult ()
public override function NextResult () : boolean
No aplicable.

Valor devuelto

true si hay otro conjunto de resultados; en caso contrario, false.

Tipo de excepciónCondición

InvalidOperationException

Se ha intentado desplazarse dentro de un objeto DataTableReader cerrado.

Se utiliza para procesar los diversos resultados que se pueden generar creando un objeto DataTableReader que se base en un objeto DataSet que contenga dos o más tablas o en una matriz que contenga dos o más instancias de DataTable.

En el primer resultado, se coloca un nuevo objeto DataTableReader.

En el ejemplo siguiente, el método TestConstructor crea dos instancias de DataTable. Para mostrar este constructor para la clase DataTableReader, en el ejemplo se crea un nuevo objeto DataTableReader basado en una matriz que contiene dos DataTables y se realiza una operación sencilla, imprimiendo el contenido de las primeras columnas en la ventana de la consola. Para probar esta aplicación, cree una nueva aplicación de consola y pegue el código del ejemplo en el archivo recientemente 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();
    }
}

En la ventana de la consola se muestran los resultados siguientes:

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

Windows 98, Windows 2000 Service Pack 4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0

.NET Compact Framework

Compatible con: 2.0

XNA Framework

Compatible con: 1.0
Mostrar: