ADO.NET puts a new face on the old ADO model with many new features and improvements. Of these, the most notable are that the ADO RecordSet has been eliminated and the internal data structures of ADO.NET are now XML based. With the increasing support of XML, it should be no surprise that ADO.NET would incorporate as much of XML as possible. XML was selected for the core data representation for several reasons. These include its wider array of supported data types, its capability to enable data to easily pass through firewalls and internal networks, its flexibility on what database of query language is being used, and its allowance of binding to any user -defined interface. ADO.NET replaces the RecordSet with a new and more complete object called the DataSet . This object represents a disconnected cached copy of data that behaves much like a database by storing a collection of hierarchical data tables, rows, columns , relationships, and constraints.
Figure 9.1 shows the ADO.NET hierarchy from the data source to the .NET application layer. This chapter focuses on the four interior components of this diagram with specific emphasis on Managed Providers and DataSet objects.
Figure 9.1. The ADO.NET hierarchy.