Thoughts from the office by Ed Ball
Monday, August 28, 2006

I made it through the 1,210 pages of Pro ASP.NET 2.0 in C# 2005 (by Matthew MacDonald and Mario Szpuszta) without nearly as much skimming as I thought I’d have to do. This book provides amazing breadth and depth in its description of ASP.NET and related technologies. Not only was it an interesting read from start to finish, but it will also serve as an excellent reference in the future. I highly recommend it to any intermediate ASP.NET developers.

Of course, the book is not without problems. Aside from various errors in the source code, there were other noteworthy confusions:

  • There is no static Page.IsPostBack method (page 78) or Page.FindControl method (page 88). The Control class has a Page property that can make it seem so.
  • The examples should always HtmlEncode to underscore the importance of escaping HTML markup.
  • They have a limited understanding of regular expressions, e.g. [\w| ]* should be [\w ]* (page 699).
  • Integrated Windows Authentication can work with Firefox (page 755).

The book does not make the mistake of focusing on Visual Studio to the detriment of understanding the actual technologies, but the authors are sometimes a little too fond of it. I hope they will understand if there are some readers who “still write HTML pages by hand” (page 25) and who “need the HTML view” (page 32).

I took a few notes as I read, so here are a few of the interesting things that I learned:

  • XHTML rendering can be disabled. (76)
  • The ASP.NET Development Helper looks interesting. (100)
  • HTML server controls support limited events (ServerClick, ServerChange) and don’t have to be inside a <form runat='server'>. (113, 119)
  • HttpRuntime.UnloadAppDomain restarts the Web app. (153)
  • global.asax supports lots of events. (156)
  • Custom configuration sections can be defined in App_Code. (174)
  • You can trim view state in a list control. (205)
  • Static properties are preferred to application state. (225)
  • $ expressions bind to app settings and connection strings. (298)
  • aspnet_compiler can be used to precompile a Web app. (653)
  • There’s a wizard interface for adding membership tables to a SQL database. (714)
  • The login user controls can be fully customized with layout templates. (729)
  • LoginView is interesting, and works with roles. (793)
  • Custom control prefixes can be reused, and can be defined in web.config. (902)
  • You can easily write your own templated controls! (930)
  • Request validation can be disabled in web.config. (989)
  • Web service method results can easily be cached. (1120)
  • Exceptions raised from Web services are rethrown as SoapExceptions. (1139)
  • Web service methods can be asynchronous “fire-and-forget.” (1185)
8/28/2006 9:21:37 AM (Pacific Daylight Time, UTC-07:00) | Comments [0] | Books#
Search
Archive
Links
Categories
Administration
Blogroll