Microsoft ADO.NET represents a major step forward for Microsoft data access technologies. It gives developers an unprecedented level of control over how their code interacts with their data—a welcome advance for developers who have been frustrated by the lack of control offered by previous “black box” technologies such as the ADO cursor engine, the Microsoft Visual Studio 6 Data Environment, and the MSDataShape OLE DB Provider.
ADO.NET is not only the most powerful and robust data access technology that Microsoft has produced to date, but it also requires arguably the steepest learning curve. I’ve watched a number of experienced Visual Studio 6 developers struggle with the ADO.NET object model in usability studies, trying to figure out where to get started. Developers who grasp the basic object model still wind up asking questions about some of the nuances in ADO.NET’s feature set, such as “How do I control the table names that the DataAdapter uses to map the results of my batch query to my DataSet?” or “Why do I get duplicate rows in a DataSet that I build by hand if I fill it twice, when the same code doesn’t create duplicate rows if I use a DataSet generated by Visual Studio .NET?”
Who Is This Book For?
I wrote this book as a thorough guide to ADO.NET for all developers, even those who have no experience with the technology. I do not assume that you know a DataReader from a DataSet. I’ve organized the book so that you can either read the chapters sequentially to learn the technology from scratch or, if you’re more seasoned, you can find the information you need quickly and easily.
What’s in the Book?
Each chapter that focuses on an object or a set of objects opens with a discussion of the object or objects followed by descriptions of how to use the major features of that object. Most chapters also show how you can save development time by building the object using Visual Studio .NET. The chapter includes reference information for the objects covered, followed by a section titled “Questions That Should Be Asked More Frequently,” which addresses questions that are generally all too often overlooked. Some information in the reference section might repeat information from earlier in the chapter. I felt that this repetition was necessary in order to prevent the reader from having to jump back and forth within each chapter.
The book is divided into four parts. Part I provides an overview of the ADO.NET object model, followed by a guide to the Data Form Wizard. Part II shows how to use the various objects available in a .NET data provider—the Connection, Command, DataReader, and DataAdapter objects. Part III includes a discussion of the “disconnected” objects in the ADO.NET object model—the DataSet, DataTable, DataColumn, DataRow, DataRelation, and DataView objects. This part also covers basic and advanced scenarios that use the DataAdapter to submit changes to your database, and it includes a discussion of ADO.NET’s XML features. Part IV covers techniques for building effective Windows-based and Web applications using ADO.NET.