Project Description
Abstraction library which enables the authoring of Ajax ScriptControl objects which can be consumed by both WebForms and MVC applications.

Remarks

This project was created to fill a temporary need for an Ajax framework for ASP.NET Server Control authoring for the ASP.NET MVC Framework. However the hope is now that the efforts on this project will result in a future tool for ASP.NET Ajax developers.

My reason for creating the Ajax abstraction layer was so I could author a server control library for ExtJs that was likely to be compatible with the final release of the MVC framework. In the absence of any direction from Microsoft, I started this project betting on System.Web.UI.ScriptControl to be the means of providing Ajax capabilities to MVC. It has since been confirmed (http://www.codeplex.com/ajaxmvc/Thread/View.aspx?ThreadId=30210 that this is indeed the direction the MVC team is going.

ASP.NET Ajax server controls are authored by inheriting from the System.Web.UI.ScriptControl class which is dependent upon the System.Web.UI.ScriptManager control which is in turn dependent upon the Web Forms application module. This dependency chain is not compatible with the ASP.NET MVC framework which does not require an html form element with the runat attribute set to "server".

The AJAX MVC project provides an abstraction layer between System.Web.UI.ScriptControl and System.Web.UI.ScriptManager which enables the authoring of server controls which can be used for both the Web Forms model as well as the MVC model.

The aim of this project is to make developers more productive by allowing them to author server controls which encapsulate their favorite javascript framework that do not require a version for both application models.

Sample Projects

Included in the source control are 3 sample projects following is a description of each.

ExtJsControlLibrary
This project is an example of how to use the AjaxAbstractions library to author a server control library for your favorite javascript library.

As I develop this control library, my intent is to mirror the ExtJs as closely as possible. If you would like to know more about a specific control, visit the ExtJs documentation to find out more about it.

ExtJs API Documentation http://www.extjs.com/deploy/dev/docs/
ExtJs Product Home Page http://www.extjs.com/products/extjs/

MvcApp
This is a demo application which shows how to use the concrete implementation from ExtJsControlLibrary with the ASP.NET MVC framework. You must have the ASP.NET MVC bits in order to load this project, currently the project references the latest release, Preview 2. You can find the project page and download the bits here http://www.asp.net/mvc

WebFormApp
This is a demo application which shows how to use the concrete implementation from ExtJsControlLibrary within the WebForms framework. The default.aspx page in this application uses the ExtJsScriptManager, but ExtJsScriptManager can be swapped out for the built-in ASP.NET ScriptManager server control.

Last edited Sep 15, 2008 at 3:43 PM by developmentally, version 6