This article summarized the workhorse objects of ADO.NET. We examined how to create a Connection and work with the Command object to execute data manipulation statements and returns result sets from the data source. Along the way we learned how to manage local transactions, close connections properly, work with stored procedures and parameterized queries, along with handling NULL values correctly. The final technique we covered was using interfaces to keep data access code generic and workable with both the SQL and OLEDB .NET data providers.
In the next article, we build on this foundation and see how the connected object model of ADO.NET interacts with the disconnected DataSet through the DataAdapter.