Use a DataReader Instead of a DataSet
In general, the only times that a DataSet must be used in preference to a DataReader are:When the data will be remoted (that is, sent as a disconnected package) to the client or a remote instance of the application or a component–for example, when using a web service that returns a DataSet .
When you need to retrieve and store more than one set of rows, and, optionally, the relationships between them.
ADataReader can be used as the source for data binding controls if required.