This is the second edition of David Sceppa's excellent and comprehensive guide to all things ADO.NET for both VB.NET and C# developers.
This book covers the whole topic in great detail and is packed with explanations and usable sample snippets. It will be useful for developers across a wide range of experience of database access, from relative beginner to experienced VB.NET practitioner.
Although it is possible to pick and mix from the various chapters, I found that I got by far the best value out of it by rolling my sleeves up and working through it chapter by chapter. This isn't generally my personal preference when reading large books. However , because of the empirical way the author builds up your understanding of this whole huge complex field of study, I persevered and was glad that I did.
One thing I did find was that it's an easy trap to just sit and read the explanations, descriptions and easy-to-follow code examples. You find yourself nodding your head, think that you've mastered that step and move one. Of course, when you come to try it a day or two later in Visual Studio, you discover you really only actually realled got 80% of it. Or at least that was my experience. So I would recommend that you create a project or two and actually try out his samples as you read each section.
Actually I got best value by taking the concept covered by his samples and rewriting them with a different database, different query, and so on, so that I was forced to think about what each line did. (And debug them when I'd got it wrong!). I've found this to be a much better learning device than copy typing from the book or - worse - copy pasting from the downloadable samples.
Bearing in mind what a wide ranging and often complicated subject ADO.NET can be, the author does well to keep it as interesting as possible Another problem with writing about ADO.NET is that so often you need to understand Topic A before you can really grasp Topic B, but to get to grips with Topic B you need to understand Topic C, etc. For this reason the book is peppered with promises that we will get to that subject before long, as in "I'll discuss the Topic B features in more detail in Chapter X". This is quite reassuring , as it's almost impossible to read this book without often suddenly stopping and thinking "Wait a minute! What about...?" or "How do I ...?" etc. In most cases, the author has foreseen this question and either provides a stopgap answer and/or one of those "I'll discuss ..." promises to tide you over the problem.
If you are familiar with ADO or DAO from your VB6 days then you will appreciate the regular comparisons he makes between the old and new approaches . The code samples are offered in both VB.NET and C# (VB first, of course, as is only fitting <g>).
Here is a list of the main contents of the book:
- Overview of ADO.NET
- Building applications with the Data Form Wizard
- Connecting to your database
- Querying your database
- Working with DataAdapters
- Storing data in DataSets
- Filtering and searching data in DataSets
- Working with relational data
- Submitting updates to your database
- Advanced updating scenarios
- Using strongly typed DataSets
- Interacting with XML data
- Building effective Windows® database applications
- Building effective Web database applications
I usually try and find both Pros and Cons when writing book reviews. To be honest, I really couldn't find any fault with it . I found Chapter 10 a bit confusing, but I'm prepared to put that down more to my lack of experience with the various scenarios rather than seeing it as a fault with the book. It is written by a man who is a master of his subject. It's generally readable from cover to cover, so far as any book on a subject as complex as ADO.NET could be. It's sufficiently well structured and indexed so that it will be a useful reference guide to dip back into for a long time to come.
What else can I say? It delivers the goods.