Variations in Data Access Methods
By now you've realized that there are essentially two ways to get data out of the database using .NET: readers and DataSets. Data readers (using SqlDataReader with SQL Server) are often called the "fire hose" of data access because they provide for a fast and efficient one-way data stream. You can't step through the data in reverse or persist changes back to the database; it's just a one-way affair.Chapter 5. It has many advantages in that we use specific SQL commands, the properties are strongly typed, we can build in caching schemes, CRUD (create, retrieve, update, and delete) methods are available, and so on. It seems like extra work, but careful construction of this kind of class will yield fewer objects and a more intuitive interface to your data.