The following table outlines the four core objects that make up a .NET Framework data provider.
|Connection||Establishes a connection to a specific data source. The base class for all Connection objects is the DbConnection class.|
|Command||Executes a command against a data source. Exposes Parameters and can execute in the scope of a Transaction from a Connection. The base class for all Command objects is the DbCommand class.|
|DataReader||Reads a forward-only, read-only stream of data from a data source. The base class for all DataReader objects is the DbDataReader class.|
|DataAdapter||Populates a DataSet and resolves updates with the data source. The base class for all DataAdapter objects is the DbDataAdapter class.|
In addition to the core classes, a .NET Framework data provider also contains the classes listed in the following table.
|Transaction||Enlists commands in transactions at the data source. The base class for all Transaction objects is the DbTransaction class. ADO.NET also provides support for transactions using classes in the System.Transactions namespace.|
|CommandBuilder||A helper object that automatically generates command properties of a DataAdapter or derives parameter information from a stored procedure and populates the Parameters collection of a Command object. The base class for all CommandBuilder objects is the DbCommandBuilder class.|
|ConnectionStringBuilder||A helper object that provides a simple way to create and manage the contents of connection strings used by the Connection objects. The base class for all ConnectionStringBuilder objects is the DbConnectionStringBuilder class.|
|Parameter||Defines input, output, and return value parameters for commands and stored procedures. The base class for all Parameter objects is the DbParameter class.|
|Exception||Returned when an error is encountered at the data source. For an error encountered at the client, .NET Framework data providers throw a .NET Framework exception. The base class for all Exception objects is the DbException class.|
|Error||Exposes the information from a warning or error returned by a data source.|
|ClientPermission||Provided for .NET Framework data provider code access security attributes. The base class for all ClientPermission objects is the DBDataPermission class.|