Make DbDataReader start reading again from the beginning of the result set

c#, database, sql, sqldatareader, winforms

Solution

You can't.

The `*DataReader` classes are forward-only iterators.

Instead, you can store the results in a `List<T>` (or a `DataTable`)

Problem

How to make `dr.Read();` start reading again from the beginning if a condition is satisfied? Something like: ``` SqlDataReader dr = command.ExecuteReader(); for(int i=0; dr.Read() ; i++){ if(condition ){ //let dr.Read() start reading from the beginning } } ```

Original source