ADO.NET is the data access model built into the .NET Framework. It replaces the old (and largely successful) ADO used in almost all Visual Basic and ASP applications built over the last few years. ADO.NET enables an application to communicate with any OLE database source (including Oracle, Sybase, Microsoft Access, and even text files). This book will present ADO.NET in a simple, easy -to-learn manner filled with many code examples and exercises. A reader with no previous knowledge of ADO.NET should be able to read this book and have a functional knowledge of new object model allowing them to retrieve and work with data from multiple data sources.
All the source code for the examples developed in the book - 75 kb -- code.zip
(NOTE: Each chapter concludes with a Summary, Q&A and Workshop.)
Hour 1. Introducing the Microsoft .NET Framework and ADO.NET.
The Microsoft .NET Framework Class Library. What Is ADO.NET? ADO.NET Versus ADO. The System.Data Namespace. The System.Data.SqlClient and System.Data.OleDb Namespaces. Installing the Microsoft .NET Framework.
Hour 2. Working with DataSets and DataTables.
Crash Course on Database Schema. DataSet Overview. Creating DataSet Schema. Adding and Removing Data.
Hour 3. Using T-SQL: A Crash Course.
Retrieving Data with SELECT. Adding New Data with INSERT. Modifying Data with UPDATE and DELETE. Using the Built-in SQL Functions.
Hour 4. Adding Relationships to DataSets.
Database Relationships and Constraints. The DataRelation Object. The DataSet Relations Collection.
Hour 5. Connecting to a Data Source.
The Connection Object. Connecting to Various Data Sources. ODBC (Open Database Connectivity). Connection Pooling.
Hour 6. Retrieving Data from the Data Source.
The Command Object. Filling a DataSet with the DataAdapter. Retrieving a Single Value from the Database.
Hour 7. Modifying Database Data.
Hour 8. Using the DataReader and DataAdapter.
DataReader Versus DataAdapter. Instantiating the DataReader. Binding DataReader Results to a Web Control. Stepping Through Data with the DataReader. Limitations of the DataReader.
Hour 9. Binding Data to List Controls.
Binding Data to Controls. Simple Data Binding in Windows Forms. Complex Data Binding in Windows Forms.
Hour 10. Working with XML.
What Is XML? Reading XML. Creating a DataSet from an XML File. Serializing DataSets to XML. Using XmlReader.
Hour 11. Using the Built-In ASP.NET List Controls.
Some General Notes About List Controls. Working with the Repeater. Working with the DataGrid. Working with the DataList.
Hour 12. Formatting ASP.NET List Controls.
A Quick Overview of CSS. Formatting the Repeater. Formatting the DataList. Formatting the DataGrid.
Hour 13. Handling ADO.NET Errors.
Using Formal Error Handling (Ready, "Catch"!). Typical Errors to Handle. Using RowError of the DataSet.
Hour 14. Managing ADO.NET Concurrency.
Optimistic Versus Pessimistic Concurrency. Coding for Optimistic Concurrency. Comparing DataSet Values Against the Database for Optimistic Concurrency. Using a Timestamp for Optimistic Concurrency. XML and Optimistic Concurrency.
Hour 15. Working with Stored Procedures.
What Are Stored Procedures? Executing a Stored Procedure. Using Parameters.
Hour 16. ADO Upgrade Concerns.
General Upgrade Issues from ADO to ADO.NET. Accessing an ADO Recordset from ADO.NET.
Hour 17. Using Connection Pooling.
What Is Connection Pooling? OLE DB .NET Data Provider.
Hour 18. Working with Transactions.
What Is a Transaction? Transactions and ADO.NET. Transactions with Stored Procedures.
Hour 19. Using Automatically Generated Commands.
Automatically Generated Commands. Using the CommandBuilder.
Hour 20. Working with Typed DataSets.
The Typed DataSet. Generating a Typed DataSet. Typed DataSets in Visual Studio .NET.
Hour 21. Optimizing Data Access Using Tiered Development.
What Is Tiered Development? Implementing Tiered Development. Creating Your Own Assembly.
Hour 22. Modifying Data in an N-Tier Application.
Updating Product Data. Adding Product Data.
Hour 23. Optimizing Data Access.
Optimizing ADO.NET Code. ASP.NET Tracing. Improving Your Queries with the SQL Query Analyzer. Simulating Application Traffic. Data Caching.
Hour 24. Transmitting DataSets Using Web Services.
Sending a DataSet Using Web Services. Consuming a DataSet from a Web Service.
Appendix A. Answers to Quizzes.