So true Wonde. +5.
Datareader works in connected Architecture whereas Dataset, Datatable with disconnected Architecture.
Connected Architecture hold a connection until reader closed. and fetched updated records from database.
But use of readers for large nunmbers of records is not good coding practics which may slow down the performance.
If you are using Datareader then you need to free up memory after use by using
Close() Dispose() and make it
NULL
Other wise OUT_OF_MEMORY_EXCEPTION could occours here is
ref[
^].