Overview of ADO.NET
ADO.NET provides consistent access to data sources such as Microsoft SQL Server, as well as data sources exposed through OLE DB and XML. Data-sharing consumer applications can use ADO.NET to connect to these data sources and retrieve, manipulate, and update data.
ADO.NET cleanly factors data access from data manipulation into discrete components that can be used separately or in tandem. ADO.NET includes .NET Framework data providers for connecting to a database, executing commands, and retrieving results. Those results are either processed directly, or placed in an ADO.NET DataSet object in order to be exposed to the user in an ad-hoc manner, combined with data from multiple sources, or remoted between tiers. The ADO.NET DataSet object can also be used independently of a .NET Framework data provider to manage data local to the application or sourced from XML.
The ADO.NET classes are found in System.Data.dll, and are integrated with the XML classes found in System.Xml.dll. When compiling code that uses the System.Data namespace, reference both System.Data.dll and System.Xml.dll. For an example of compiling an ADO.NET application using a command line compiler, see ADO.NET Sample Application.
ADO.NET provides functionality to developers writing managed code similar to the functionality provided to native COM developers by ADO. For a discussion of the differences between ADO and ADO.NET, see "ADO.NET for the ADO Programmer" at https://msdn.microsoft.com/library/en-us/dndotnet/html/ADONETProg.asp.
In This Section
- Design Goals for ADO.NET
Discusses the motivation and design goals behind creating ADO.NET.
- ADO.NET Architecture
Provides an overview of the architecture and components of ADO.NET.
- .NET Framework Data Providers
Provides an overview of the design of the .NET Framework data provider and of the .NET Framework data providers that are included with ADO.NET.
- ADO.NET DataSet
Provides an overview of the DataSet design and components.
- Writing Common Code for .NET Framework Data Providers
Provides information about how to use the common interfaces supplied by ADO.NET to write a single set of code that will work regardless of the .NET Framework data provider.
- ADO.NET Sample Application
Provides an example of an ADO.NET application that retrieves data from a database and returns it to the console.
- Side-by-Side Execution and ADO.NET
Discusses differences in ADO.NET versions and their affect on side-by-side execution and application compatibility.
- Accessing Data with ADO.NET
Describes the ADO.NET architecture and components and how to use them to access existing data sources as well as to manage application data.