Как обрабатывать несколько ResultSet, каждый с несколькими строками? IDataReader.NextResult (), заканчивающийся Read ()
Как обрабатывать несколько ResultSet, каждый с несколькими строками? Призыв кNextResult()
ломает цикл
Некоторые из моих 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
}
}