Как обрабатывать несколько ResultSet, каждый с несколькими строками?Вызов NextResult()
прерывает цикл while.
Некоторые из моих SP возвращают несколько ResultSets.Я работаю с ними с помощью NextResult()
, но когда я делаю это, а мой SP имеет только один ResultSet, я вижу, что цикл while с Read () завершается, оставляя меня только с первой строкой.
Без вызоваNextResult()
Я получаю все строки для первого ResultSet, но, конечно, второй и последующие ResultSet не обрабатываются?
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
}
}