So you want to know what all the ASP.NET 2.0 buzz is about right? Here is a quick glance of new things to learn (and write about!)
Developer Productivity
ASP.NET 1.0 was great, but as with most technologies there can always be room for improvement. One of the design goals of 2.0 was to help make the lives of developers easier. The ASP.NET team surveyed the common tasks one does during development, and encapsulated them into controls and services (which also helps reduce the number of lines of code!). These new controls encapsulate common tasks like user personalization, data access, memberships and roles and even navigation (think treeview, menus and yahoo like breadcrumbs). One thing that was custom coded in most web applications was common headers and footers on websites. ASP.NET 2.0 now comes with ‘master pages’ which gives you the ability to define common elements of your web page like headers, footers etc. Localization was also improved, allowing you to know auto-detect the visitors locale and display data accordingly. Dynamic generation of resource files is now a built-in tool with Visual Studios 2005.
Configuration Management and General Administration
Several new enhancements can be found in 2.0 that enable easier deployment, management and general operation of ASP.NET enabled servers. Configuration management APIs now give you the ability to read, update and even create web.config files.
You can finally precompile your application before deploying it. Previously you had to either hit each and every page so ASP.NET compiles your site, or you used some sort of a tool that basically ‘walked’ your site to ensure the pages have been compiled.
Performance
64-Bit support means ASP.NET can take advantage of the full memory address space on 64-bit cpu’s.
Caching has also been improved upon, now allowing the developer to set custom dependencies, post-cache substitution which improve your ability to custom your caching.
Managing the cache is now even easier, with the ability to create ‘cache profiles’ and tweak a ‘cache configuration’. Basically what happens is that you create a cache profile which you can then use on your pages which allows you to manage caching on many pages by simply modifying your cache profile.
For increased scalability, you can now set ‘SQL cache invalidation’ and ‘disk output cache’. SQL Cache Invalidation will cache the data until the data actually changes at the database level (as oppose to time based). Disk output cache will cache the data to disk (not only memory), thus allowing for more pages to be cached since you are not limited to your servers memory limit.
I know that was a quick summary, but look for more detailed explanations of each in future articles.
Happy Coding!
~Salman