Author: George Shepherd
Publisher: Microsoft Press, 2010
Aimed at: C# programmers
Pros: Covers a great deal
Cons: Lacks depth
Reviewed by: Ian Elliot
This is the updated edition of a well-known step-by-step book that has kept pace with ASP .NET. The latest version adds just short of 100 pages but keeps the same overall approach.
The most important thing to know about this book is that it is a beginner's book but it isn't suitable for a non-programmer. It most certainly doesn't teach the fundamentals of programming and you are expected to know how to program in C#.
It does, however, start off from the very basics of the way that web works. Chapter 1 covers HTTP requests, HTML, forms, CGI and eventually classic ASP and ASP .NET. All of these are treated as an overview but with enough technical detail for you to understand what is going on.
Chapter 2 gets to grips with the step-by-step aspect of the book with a simple Hello World example using Visual Studio. You could do the same thing with Express Web Developer but this isn't covered. Chapter 3 explains the ASP .NET page rendering process and Chapter 4 deals with how custom controls are rendered. From here the book moves fairly rapidly to the close of the first part with a look at composite controls and a selection of the more advanced supplied controls. By the end of this section you should have a rough idea how ASP .NET works.
The second section is called Advanced Features and it moves on to many of the topics that beginners find difficult if they are coming from a web design background. Chapter 7 introduces the idea of master pages and Chapter 8 deals with configuration - everyone's least favourite topic. Chapter 9 moves back to a programming topic with a look at authentication and managing users in general. Chapter 10 is about the often mystifying topic of data binding and database in general. Chapters 11, 12 and 13 are on navigation, personalization and web parts respectively and bring the second section to a close. By the end of this section you should have an idea of the wider workings of ASP .NET and be starting to realise how some of it fits together and how large a subject it is.
The third section is on caching and state management which in many ways don't really fit together. Chapter 14 deals with session state and how it can be managed. Chapters 15 and 16 deal with data caching and output caching respectively.
The fourth section is on diagnostics and "plumbing", i.e. the classes that work behind the scenes to get an ASP .NET page created. Chapter 17 is about tracing and debugging with Visual Studio. Chapters 18 and 19 are about the HttpApplication class and HTTP handlers.
The fifth section is mostly on the newer topics introduced with .NET 4.0. We we have a quick overview of XBAP, the new MVC framework, Ajax and Silverlight. All are very much overviews which attempt to put the technology into context.
The final section consists of just two chapters, one on services - WCF mainly; and one on deployment.
You can tell by the number of topics covered that even for a fairly thick book there is a lot of material to get through per page. As a result most of the topics are introduced at the level of overviews and introductions. However they do serve to get you started and get you asking the right questions.
To get anything much from this book you have to be a programmer and want to make the transition to ASP .NET. It certainly isn't a starter book for a reader who knows about PHP or another web creation technology. The book also goes a long way in a comparatively short space so don't expect in depth discussions or any attempt to stay on core material. The book is best described as shallow and broad. For the right reader this could be sufficient but for most you will need a second level book that goes deeper.