Successfully avoiding direct sunlight yet again, I managed to hit another set of fine sessions.
Paul Litwin gave an excellent summary of basic, yet important and poorly documented tips and tricks for getting the newfangled ASP.NET 2.0 Data Controls to actually work in non-demo situations. I don’t think much can be done to save the DataControls in complex scenarios—the abstraction is just too leaky and they enforce too many requirements on your data access code to be of use in non-trivial applications. Paul’s demo, while useful, helped cement this view. Code should be avaliable post-conference to illustrate the particulars.
Next up was Rob Howard, Mr. Community Server himself, speaking on Building High Performance ASP.NET Applications. While he is currently with Telligent Systems, he was on the ASP.NET team in his Microsoft days and knows a bit about the internals. Some of his key points were:
- Don’t try and out think the framework. The current implementation is very performant and tweaking with deeper settings will probably cause nothing but headaches. He notes that the MySpace team did not change any of the defaults and has been quite happy with the results. As a corolarry, don’t try and outsmart the connection pool.
- If you are having speed issues, start by looking at database connection issues and work down from there. Chances are you have some significant issue there.
- Yes, using <%= Somevar %> is the fastest way to get output out of ASP.NET. But doing complex things using inline commands alone will not speed things up enough to justify the efforts required outside of extreme situations.
- Rob, like myself, tends to use DataReaders combined with PODOs feeding Repeaters to get his data onto the page. Great minds do think alike.
I skipped the DotNet Rocks interview with Scott Guthrie to catch Kimberly Trip of SqlSkills.com fame present “Recovering from Isolated Disasters and Human Error.” It was an excellent demo on many levels, showing off some very shiny new features of Sql 2005. One gem of knowledge—check out the tablediff.exe utility in your Sql tools folder. It can examine two databases and generate a T-SQL script to synchronize the data. I can think of a few expensive tools people buy to do just that. In any case, if you get a chance to see Ms. Tripp present, check it out—she has an awesome stage presence. You will be amused at the very least, and you might just learn something about Sql Server along the way.
For the final session of the day, I attended Miguel Castro, the Dot Net Dude, presentation on Web Control Databinding. His rather entertaining walk-through of making a calendar control attaching to various data sources—from strongly typed to working with a custom DataSource control—was a very effective demo of declarative controls in ASP.NET 2.0. Now, I could try and summarize it, or you could go download the source code from www.steelbluesolutions.com the day after tomorrow (30 March) and see for yourself.