September 2009 Entries

ScottGu broke the news last night that Microsoft is making a shared CDN available for the purposes of hosting the AJAX scripts. The full details of the scripts that are supported right now are available here, but basically it’s ASP.NET AJAX 4.0 Preview 5 (which just came out) and jQuery 1.3.2.

If you’re using ASP.NET AJAX on the server side, you can just tell the ScriptManager to use the CDN by setting the EnableCdn property to true. I find this implementation a little misleading because it only applies to the scripts within System.Web and System.Web.Extensions. If you want support for other scripts you would need to put them on your own CDN and still hook the ScriptManager::ResolveScriptReference event and set the ScriptRefrenceEventArgs::Script property accordingly.

posted Wednesday, September 16, 2009 7:24 AM | Comments | Filed Under [ Web Development ASP.NET ]

Good news, ASP.NET AJAX 4.0 Preview 5 is here! Better yet, Microsoft has overhauled the implementation of tracking disposable objects to include the performance enhancement that was discussed in my “ASP.NET AJAX ‘Disposable Objects’ Performance Heads Up” posts (Part I & II).

So how’d they do it? They tag each disposable object with an integer value which represents the objects position in an internal array using a property named “__msdisposeindex” when it’s registered. When it’s unregistered they delete that property from the object and from the array. Small performance heads up that there is a small hidden cost of reallocating the array once 1000 object have been removed. This keeps the array from growing into infinity should you keep an application open in the browser for a long time and create/destroy lots of disposable objects.

So, it’s not exactly as discussed previously since they use an array/index approach instead of a global, incremented counter with a hash, but… problem solved!

posted Thursday, September 10, 2009 7:31 PM | Comments | Filed Under [ Web Development ASP.NET ]