ADO.Net is the native driver designed by Microsoft for .Net technology used to interact with middle wave or database. Without ADO.Net we cannot write database programming code in .Net. ADO.Net is set of classes that expose data access service to .Net Programmer. This provides set of components for creating distributed data sharing application. ADO.Net is an integral part of the .Net framework which provides access to relations XML and application data.

ADO.Net Supports connection oriented architecture and also disconnected architecture and it supports a variety of development needs, including the creation front-end database clients and middle-tier business objects used by applications, tool languages, or Internet browsers. ADO.Net provides consistent access to data sources such a SQL Server and XML, and to data sources exposed through OLE DB and ODBC.

ADO.Net includes .NET Framework data providers for connecting to a database, executing commands, and retrieving results. Those results are either processed directly, 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 passed between tires. The dataset object can also be used independently of .NET Framework data provider to manage data local to applications or source from XML.

ADO.Net provides functionality to a developer who writes managed code similar to the functionality provided by native component object model developed by ADO.


The application can take advantage of the flexibility and broad acceptance of XML because XML is a format for transmitting datasets across the network, any component that can read the XML format can process data. In fact, the receiving component need not be an ADO.Net component at all. The transmitting component can simply transmit the dataset to its destination without regard to how the receiving component is implemented. The destination component might be a Visual Studio application or any other application implemented with any tool whatsoever. The only requirement is that the receiving component is able to read XML. As an industry standard. XML was designed with exactly this kind of interoperability.


ADO.Net data components in Visual Studio encapsulate data access functionality in various ways that help you program more quickly and with fewer mistakes. For example, data commands abstract the task of building and executing SQL statements or stored procedures. Similarly, ADO.Net data classes generated by the designer tool result in typed datasets. This, in turn, allows you to access data through typed programming.


  • For disconnected application, ADO.Net datasets offer performance advantages over ADO disconnected recordsets
  • When using COM marshalling to transmit a disconnected record set among tiers, a significant processing cost can result from converting the values in the recordset to data type recognized by COM. In ADO.Net, such data-type conversion is not necessary


  • Because the web can vastly increase the demands on your data, scalability has become critical. Internet application has a limitless supply of potential users.
  • Although an application might serve a dozen user well, it might not serve hundreds or hundreds of thousands- equally well.
  • An application that consumes resources such as database locks and database connections will not serve high numbers of users will, because the user demand for those limited resources will eventually exceed their supply.
  • ADO.Net accommodates scalability by encouraging programmers to conserve limited resources. Because any ADO.Net application employs disconnected access to data, it does not retain database locks or active database connection for long durations.