Author: Matthew MacDonald and Adam Freeman
Aimed at: Intermediate level
Cons: Lacks coverage of MVC
Reviewed by: Ian Elliott
This is a huge book which makes it difficult to read -so it had better be worth the back-breaking, arm-aching task of picking it up and reading it.
This is an encyclopedia of a book, but it is still remarkably readable. It covers all of ASP.NET 4 using C# as its example language and it covers many of the ancillary technologies that surround ASP.NET and are generally part of any site based on it. What it doesn't cover well, there is only one chapter on it, is ASP.NET MVC. So if you are committed to the MVC approach you need a different book.
As already mentioned, the book is huge, well over 1500 pages. It also has 34 chapters divided into five parts.
The first part is on core concepts and is a basic introduction to Web Forms. It covers the basic ideas of server side controls, postback and state management.
Part 2 is on data access including Linq, ADO.NET, data binding, XML and all things data. It has a strong bias towards the traditional and simple way of doing things rather than Linq and the Entity Framework approach to data. Part 3 returns to ASP.NET proper and is called Building ASP.NET Websites. This starts off with User Controls, themes and master pages and moves on to navigation and deployment. Part 4 deals with security including authentication, profiles and membership. It also deals with cryptography and the core ASP.NET security model.
The final part is a collection of advanced topics that really don't fit anywhere comfortably. There are chapters on custom server side controls, using the GDI+, Ajax, and using web parts. There are also two chapters on what you might call alternative technologies - Silverlight and MVC. Just enough coverage for you to know what you are missing.
There are few obvious things to say about this book. The first is that it isn't for the complete beginner - you need to know some ASP.NET and be able to program in C#. However, Part 1 is actually a good introduction to ASP.NET as long as you are fairly sophisticated in your approach to programming. It would make a good conversion course to ASP.NET.
The second is that the size of the book makes it difficult to read from cover to cover and my guess is that most readers are going to dip into it to find out about topics that are bothering them. It works when used in this way as each of the chapters are fairly self-contained. It is also worth knowing that the examples are fairly small - this is a book about ideas and techniques rather than learning by example.
If you are looking for an encyclopedic approach to ASP.NET, one that uses the best from version 4 but doesn't veer off into trendy topics such as the Entity Framework and MVC, then this is a great book - and it will help develop your biceps.