ASP.NET 2.0 Unleashed, by Stephen Walther
Summary: Invaluable book. Buy it!
I am a very pleased owner of the original ASP.NET Unleashed, for ASP.NET 1.1, so I was looking forward to getting my hands on the version for ASP.NET 2.0. Stephen Walther is a Microsoft “Software Legend”, largely due to how influential the original ASP.NET Unleashed was in the developer community. I’m apparently not the only dev praising Stephen and his Unleashed titles. In addition to authoring books, Stephen was also the lead developer for the Community Starter Kit and the Issue Tracker Starter Kit. He knows his stuff, and it shows.
Like all of SAMS’ Unleashed series, this book is well organized, well written, and very readable. Don’t let the easy readability fool you, though—this book is packed with advanced information, just packaged in a way the newest n00b can grow into. Chapters start off with the basics, and build to more advanced subjects. By the end of the chapter, you’ve covered the entire concept, with examples. If necessary, the detailed index leads you right back to the section you need to review.
ASP.NET 2.0 added a lot to the web.config file, so we revisit configuration a number of times. Where possible, all configuration attributes are detailed, making these sections excellent for reference, as well as learning. In many cases, important methds and properties for important classes are detailed (such as page output caching).
Perhaps the greatest asset to this book is the examples. The code in the examples is complete (rather than just a few lines amounting to little more than a method call), so you see methods or configurations in context. Unlike many of the examples in the MSDN library, Stephen’s examples are simple and to the point, not heavy in code which detracts from the actual example. All examples in print are written in VB.NET, but complete C# examples are on the CD. Examples are written with inline code, so they will function in the Express SKUs. More advanced developers can easily translate into code behind or code beside if they want to, or use the code as-is for learning. In some places, the examples are more than just an explanation—Stephen actually extends the native framework. In the sections about Profiles, Stephen includes a “BetterProfileProvider” (with complete source code on the CD), which stores profile properties in separate table columns, rather than in a BLOB in a single field. This is a similar concept to to the SqlTableProfileProvider from the asp.net team. Few books I’ve read go above an beyond like this one does.
Not covered in this book are Crystal Reports .NET and SQL Server Reporting Services. Those are components of Visual Studio, and not available in the Express versions. Also not included are discussions of Team System (there is another book for that). The focus on this book is solely ASP.NET and the relevant parts of the .NET framework.
If you’re doing ASP.NET development, using any of the Visual Studio 2005 SKUs, you should definately invest in this book. This is truly one of the few things you can buy and use which will make you a better developer.