Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lucas Pereira

C# ExecuteReader() dentro do While

Recommended Posts

pessoal, to com um problema cruel...

 

to tentando programa em C# do asp.net, porem to com um problema dentro de um while meu...

Tenho o seguinte codigo, tenho que executar um consulta dentro do meu while...

SqlCommand comando = new SqlCommand("SELECT * FROM tabela", conexao);
SqlDataReader rst = comando.ExecuteReader();

while(rst.Read()){

SqlCommand comando2 = new SqlCommand("SELECT * FROM tabela_outra WHERE id="+rst["codigo"], conexao);
SqlDataReader rst2 = comando2.ExecuteReader(); <-- aki que ta o problema!!!


}

 

Quando tendo abri outro ExecueReader() ele da um erro dizendo que preciso fechar o "rst" se referindo ao primeiro ExecutReade, só que nao posso fechar pq estou usando ele ainda...

Como executo essa consulta dentro do while sem dar o erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem vários tópicos aqui no fórum sobre este mesmo problema.

O ideal é popular uma classe, fechar os Readers, depois trabalhar com suas classes e não com os objetos readers abertos.

De qualquer forma, se tiver dificuldade, o mais simples é trocar o primeiro sql para retornar um DataTable. Ae faça um laço nas linhas do DataTable e poderá utilizar o dataReader.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.