Use of AJAX with Asp.net
Over the past few months, there's been an increasing amount of buzz about Asynchronous JavaScript and XML (AJAX) programming. It's about time. AJAX is the new term for a technology that Microsoft IE developers have been using for years—the ability to make background requests to a server from a client Web page using the XMLHttpRequest object. However, because that object was originally invented and implemented by Microsoft as an ActiveX control, developers who had to support multiple browser types eschewed the technology, despite its early promise for building more interactive and efficient Web applications.
But now that Opera, Netscape, Safari, and Firefox all include a built-in JavaScript implementation of the XMLHttpRequest object, the technology has been reinvigorated, thanks mainly to popular sites such as Google's GMail and Maps, which utilize the XMLHttpRequest object. Except for the code needed to invoke an XMLHttpRequest object on the various browsers, all the implementations are otherwise similar from a coder's point of view, exposing a common set of methods and properties, and letting you create AJAX applications that run identically across all the major browsers.
From AJAX Frameworks to Atlas
.NET developers, many of whom have already used the XMLHttpRequest object in their ASP and ASP.NET applications, began building additional support frameworks for AJAX, most notably Michael Schwarz's free AJAX.NET project. Microsoft, often slow to recognize trends, has finally recognized this one. Yesterday, Charles Fitzgerald, Microsoft's General Manager for Platform Technologies, announced "Atlas," the code name for Microsoft's upcoming AJAX support. Atlas goes far beyond the original concept, including integrated debugging with Visual Studio.
Scott Guthrie, manager of Microsoft's Web Platform and Tools Team, described Atlas' planned features in his blog:
The Atlas Client Script Framework will work on all modern browsers, and with any web server. It also won’t require any client installation at all—to use it, you can simply include references to the right script files in your page.
The Atlas Client Script Framework will include the following components:
* An extensible core framework that adds features to JavaScript such as lifetime management, inheritance, multicast event handlers, and interfaces
* A base class library for common features such as rich string manipulation, timers, and running tasks
* A UI framework for attaching dynamic behaviors to HTML in a cross-browser way
* A network stack to simplify server connectivity and access to Web services
* A set of controls for rich UI, such as auto-complete textboxes, popup panels, animation, and drag and drop
* A browser compatibility layer to address scripting behavior differences between browsers.
Guthrie also says that Microsoft will provide new ASP.NET server controls that you'll be able to use to bind client-side controls to server-side code, and promises simple and direct access to ASMX pages and Indigo services directly through the Atlas Client Script Framework.
While AJAX won't ship with Visual Studio 2005, Microsoft plans to provide it as an add-on layer to ASP.NET and will offer a preview version to developers at the PDC conference in Los Angeles in September.