¿Cómo manejar múltiples ResultSets, cada uno con múltiples filas? La llamada a NextResult() rompe el ciclo while.¿Cómo manejar múltiples ResultSets, cada uno con múltiples filas? IDataReader.NextResult() ending Read()
Algunos de mis SP devuelven varios ResultSets. Estoy manejando esto con NextResult() pero cuando lo hago y mi SP solo tiene un ResultSet único, veo que el ciclo while con Read() termina dejándome solo con la primera fila.
Sin la llamada a NextResult() obtengo todas las filas para el primer ResultSet pero, por supuesto, el segundo y posteriores ResultSets no se procesan?
using (IDataReader reader = storedProcedure.ExecuteReader(CommandBehavior.CloseConnection, parameterNames as string[], arguments))
{
while (reader.Read())
{
ArrayList row = new ArrayList();
for (int j = 0; j < reader.FieldCount; ++j)
{
object rowValue = reader.GetValue(j);
row.Add(rowValue);
}
reader.NextResult();//next resultset, breaks out of the while
}
}
agradable sobre Tomas. – learnerplates
Esto fue genial. Rara vez me encuentro con bucles do-while que olvidé que existía y por lo tanto nunca pensé usar uno hasta ver esto. ¡Gracias! – KSwift87
Sitch perfecto para una estructura do/while – pimbrouwers