Rétablissement du slider DataReader

Comment est-ce que je peux rembobiner un slider d'un DataReader au début?

Avec un résultat DataReader, je dois lancer deux loops while, mais celles-ci doivent être initiales. Il s'agit de deux itérations dans un set de résultats exécutant une requête une fois.

Exemple:

 dr = command.ExecuteReader(cmd); while (dr.Read()) { // do some... } // rewind cursor here while (dr.Read()) { // do another things... } 

J'ai regardé dans les documents DataReader et je n'ai rien trouvé, donc si cela ne peut pas être possible avec DataReader, je peux changer la class pour celle qui correspond à ce but.

Vous ne pouvez pas (sauf si vous exécutez la command à nouveau): c'est un stream à sens unique. Si vous voulez voir datatables plus d'une fois, vous devrez les mettre vous-même en memory tampon, par exemple dans une List<T> (pour certains T ), ou (yeuch) en tant que DataTable .