Como obter o número de linhas usando SqlDataReader em c #

Minha pergunta é como obter o número de linhas retornadas por uma consulta usandoSqlDataReader em c #. Eu vi algumas respostas sobre isso, mas nenhuma foi claramente definida, exceto por uma que afirma fazer um loop while comRead() método e incrementar um contador.

Meu problema é que eu estou tentando preencher uma matriz multidimensional com a primeira linha sendo os nomes do cabeçalho da coluna e cada linha depois disso para os dados da linha.

Eu sei que posso apenas despejar as coisas em um controle de lista e não me preocupar com isso, mas para minha própria edificação pessoal e também gostaria de puxar os dados dentro e fora da matriz como eu escolher e exibi-lo em diferentes formatos.

Então eu acho que não posso fazer oRead() e, em seguida, incrementar + + maneira porque isso significa que eu teria que abrirRead() e depois abrirRead() novamente para obter quantidade de linhas e, em seguida, dados da coluna.

Apenas um pequeno exemplo do que estou falando:

int counter = 0;    

while (sqlRead.Read())
{
    //get rows
    counter++
}

e, em seguida, um loop for para percorrer as colunas e pop

something.Read();

int dbFields = sqlRead.FieldCount;

for (int i = 0; i < dbFields; i++)
{
   // do stuff to array
}

questionAnswers(6)

yourAnswerToTheQuestion