The Microsoft Ajax Library and Visual Studio Beta 2

Visual Studio 2010 Beta 2 was released this week and one of the first things that I hope you notice is that it no longer contains the latest version of ASP.NET AJAX. What happened? Where did AJAX go?

Just like Sting and The Police, just like Phil Collins and Genesis, just like Greg Page and the Wiggles, AJAX has gone out of band! We are starting a solo career.

A Name Change

First things first. In previous releases, our Ajax framework was named ASP.NET AJAX. We now have changed the name of the framework to the Microsoft Ajax Library. There are two reasons behind this name change.

First, the members of the Ajax team got tired of explaining to everyone that our Ajax framework is not tied to the server-side ASP.NET framework. You can use the Microsoft Ajax Library with ASP.NET Web Forms, ASP.NET MVC, PHP, Ruby on RAILS, and even pure HTML applications. Our framework can be used as a client-only framework and having the word ASP.NET in our name was confusing people.

Second, it was time to start spelling the word Ajax like everyone else. Notice that the name is the Microsoft Ajax Library and not the Microsoft AJAX library. Originally, Microsoft used upper case AJAX because AJAX originally was an acronym for Asynchronous JavaScript and XML. And, according to Strunk and Wagnell, acronyms should be all uppercase. However, Ajax is one of those words that have migrated from acronym status to “just a word” status.

So whenever you hear one of your co-workers talk about ASP.NET AJAX, gently correct your co-worker and say “It is now called the Microsoft Ajax Library.”

Why OOB?

But why move out-of-band (OOB)? The short answer is that we have had approximately 6 preview releases of the Microsoft Ajax Library over the last year. That’s a lot.

We pride ourselves on being agile. Client-side technology evolves quickly. We want to be able to get a preview version of the Microsoft Ajax Library out to our customers, get feedback, and make changes to the library quickly. Shipping the Microsoft Ajax Library out-of-band keeps us agile and enables us to continue to ship new versions of the library even after ASP.NET 4 ships.

Showing Love for JavaScript Developers

One area in which we have received a lot of feedback is around making the Microsoft Ajax Library easier to use for developers who are comfortable with JavaScript. We also wanted to make it easy for jQuery developers to take advantage of the innovative features of the Microsoft Ajax Library.

To achieve these goals, we’ve added the following features to the Microsoft Ajax Library (these features are included in the latest preview release that you can download right now):

  • A simplified imperative syntax – We wanted to make it brain-dead simple to create client-side Ajax controls when writing JavaScript.
  • A client script loader – We wanted the Microsoft Ajax Library to load all of the scripts required by a component or control automatically.
  • jQuery integration – We love the jQuery selector syntax. We wanted to make it easy for jQuery developers to use the Microsoft Ajax Library without changing their programming style.

If you are interested in learning about these new features of the Microsoft Ajax Library, I recommend that you read the following blog post by Scott Guthrie:

http://weblogs.asp.net/scottgu/archive/2009/10/15/announcing-microsoft-ajax-library-preview-6-and-the-microsoft-ajax-minifier.aspx

Downloading the Latest Version of the Microsoft Ajax Library

Currently, the best place to download the latest version of the Microsoft Ajax Library is directly from the ASP.NET CodePlex project:

http://aspnet.codeplex.com/

As I write this, the current version is Preview 6. The next version is coming out at the PDC.

Summary

I’m really excited about the future of the Microsoft Ajax Library. Moving outside of the ASP.NET framework provides us the flexibility to remain agile and continue to innovate aggressively. The latest preview release of the Microsoft Ajax Library includes several major new features including a client script loader, jQuery integration, and a simplified client control creation syntax.

Discussion

  1. De says:

    Steven, can we expect a book from you on MS Ajax Library?

  2. Praveen Prasad says:

    iam still waiting for js file script folding support.

  3. Art Colman says:

    In reviewing the content of the MS Ajax Lib Preview 6 I am struggling with determining how to implement the script loading behavior for an Ajax Control Toolkit item other than the examples provided in the Preview (for example, AutoComplete).

    My first step was to try to reverse engineer what was done for the watermark implementation. It appears that a the Ajax Control Toolkit script has been renamed from TextBoxWartermark to ACTWatermark and that the ACTRegisterExtended has been adjusted to reference this renamed script. Is it possible to provide some sort of recipe that could be followed?

    I don’t think I’m stupid… just a bit illiterate.

    Thanks for the extremely thorough work.

    Best regards, ArtC

  4. Craig says:

    That’s interesting. Microsoft Ajax Library *uses* AJAX, but is not itself limited to AJAX, it does quite a bit more. Strictly speaking, AJAX is simply using Javascript to make an asynchronous call to the server, returning XML. Last I checked, the Microsoft Ajax Library does a lot to add on to that capability.

    Nice distinction, let’s hope it filters through the industry.

  5. Great work. Thanks guys! Yeah, “Microsoft Ajax Library” sounds much better.

  6. @Craig: if one sees “Ajax” as a rebranding of JavaScript, it all makes sense…

  7. Imran says:

    This means that Microsoft Ajax Library installed separately.
    But if some BuiltIn Server Controls used Scripts that contains ASP.NET AJAX classes then where they find the classes.

  8. @Imran — ASP.NET 4 includes Microsoft Ajax version 4. This version of Microsoft Ajax does not contain any of the new features like client templates, client data-binding, and client data access.

  9. Hi Sir,

    The new naming is welcome .We are happy that the framework is not tied with any specific server apps. Can you please explain why should I go for this when we have jquery already ?

    Whats going to be relally advantageous ?

    Thanks,
    Thani

  10. healthcare says:

    Microsoft Ajax Library and Visual Studio Beta 2 nice

  11. LongKnights says:

    Thanks.

    Since MS ASP.NET doesn’t even consider iteself a client-server technology (reference the fact that you have to postback to enable or make a control visible) it is nice to see more support for client-side development.

  12. Jay says:

    @Praveen Prasad – I agree – Notepad++ supports code folding, why can’t Visual Studio?

  13. @Thanigainathan — Great question! Let me start by saying that we don’t want you to choose between ms ajax and jQuery — we want you to use both.

    We designed ms ajax to appeal to jQuery developers. For example, you can create an ms ajax Watermak control using jQuery like this: $(“#myTextBox”).watermark(“Enter some text”); As soon as you load jQuery into a page — by adding a SCRIPT reference or by using the client script loader — you can start using any ms ajax control from jQuery automatically.

    jQuery has a great selector syntax. MS Ajax, on the other hand, is really good at client templates, client data-binding, client data access, and our client script loader.

    So the short answer: please use both jQuery and ms ajax.

    — Stephen

  14. Antonio says:

    Stephen, are there plans to set up documentation of the library (msdn, wiki-style or something similar)? Would be nice to have this as a complement of being able to read the code.

    Also, is there any road map for integration with other plug ins? jqGrid, jQuery UI, etc?

  15. john west says:

    Can I ask a question about binding? One-way binding is great, but I need to bind a sys:if statement, so that if a referenced property in the sys:if statement changes, the sys:if statement itself needs to be re-evaluated. Is there any way to do that?

    John

  16. Essay Blog says:

    your article very useful for my dissertation

  17. I’m waiting for the js file script folding support.

  18. MarcelDevG says:

    Stephen,
    If MS is dropping the ASP.NET word (which isn’t a bad idea), why keeping it on ASPNET.codeplex.com ? 🙂

    I know, naming/positioning products is hard!

  19. that is a great and a very useful article.

  20. Hey Stephen thanx for the article. Is very helpeful for me.

  21. Andy says:

    Good to hear that out-of-band will keep the innovation coming.

    I’d be interested to see some samples using Sys.Observer and Sys.bind with other client frameworks like ExtJS or richer UI, with more complex layouts and binding.

    I’ve been watching the MVVM pattern getting a lot of interest in the WPF/Silverlight community, and realised how useful the latest core (binding/change tracking) features of Microsoft Ajax Library could be to use MVVM in javascript, with MVC/AtomPub/ADO.NET Data Services on the server.

    My sample Views use ExtJS and ViewModels use Sys.Observer and jQuery Ajax calls, with Sys.bind bindings to properties of Extjs controls against the ViewModel.

    It works quite well, but there are areas that would still be helpful to include in a base library (in particular, metadata on models, which is increasingly getting included across MVC, in Entity models, in XML, but not really available on the client side in javascript). And clarity on conventions, such as binding conventions requiring controls from other client frameworks to be wrapped for use with Sys.bind.

    Anyway, would be interesting to know if anyone else is looking into MVVM in javascript. I’ve only seen one mention of it on Stack Overflow!

  22. Sathyan says:

    Dear Stephen,
    Thanks for the nice post. Its great news knowing about this game changer. I do have a problem – the VS 2010 training labs that I got from Channel 9 do NOT work with Preview 6 – (example: the client template stuff). But that works like a charm with Preview 4. Things have changed i understand but it would be great if you can explain a few things – for example if I use the start.js how to include all scripts that I need? I did see one article James Senior but that did not help in my case and if I include them with Script Manager I get a web resources reference error – Can you please do a quick sample project with Preview 6, Beta 2 and Client templates? Please….

  23. I agree that calling Microsoft Ajax Libarary ASP.Net AJAX reqally confuses a lot of people. I am actually one of those people. Well, I’m surprise that it is only now that you think of changing the name. Anyway, I guess everything would be clear for a lot of people from now on.

  24. webtasarım says:

    that is a great article.

  25. sugar daddy says:

    My husband is a developer, and I will make sure to show him this article. He might learn a few more tricks.

  26. It Would be really nice to have documentation of the library as a complement of being able to read the code

  27. This latest release by Microsoft definitely will increase AJAX’s popularity.

  28. ugg uk says:

    Hey, your posts have inspired me! – I love the way you directly get to the point, and then work out- wards. I’ve been trying to do figure out what I want to say about ,that would allow me to do exactly the same thing.

  29. New name is definitely a bit more catchy. good call.

  30. lgmorand says:

    I don’t find the roadmap for MS Ajax Library. Because it’s an always-evolving project, it should be normal but can we expect a v1.0 at the end of march. A release available at the same time as ASP.Net 4.0?

  31. Touchworks says:

    An informative and useful article…..Thankz.

  32. namhyuk says:

    cool. thank you.

  33. nice to have documentation of the library as a complement of being able to read the code..

  34. Not sure if I like the name change, might take some getting used to that’s for sure!

  35. The Visual Studio .NET environment was rewritten to partially use .NET. All languages are unified under one environment. Compared to previous versions of Visual Studio, it has a cleaner interface and greater cohesiveness.

  36. confuse about ajax and visual studio..can u help me explain more..big thanks for kinda share

  37. One day I’ll learn to RTFM before I post comments with dumb questions. The range of options is really impressive for what is essentially a very simple tool. Can see this being an integral part of our build process.

  38. ya…Microsoft Ajax Library is very useful…

  39. tiff says:

    If you are paying for purses, you want to be certain it is an authentic Gucci handbag and not a replica. gucci handbags are often copied, gucci shoulder bagsbut never equaled. You don’t want to spend your money on fake Gucci authentic gucci handbagspurses, but there are online sellers who offer discount gucci backpacksGucci handbags, or wholesale gucci handbags at significant savings.

  40. New Year was coming, everyone wants new clothes to disguise themselves, Abercrombie Clothes is a good choice. Because abercrombie and fitch is a well-known brand, abercrombie shop everywhere, abercrombie is very much a Cheap Abercrombie. There has Abercrombie Mens, Abercrombie Womens and Abercrombie Accessories. Personally, I’m looking forward to Abercrombie Hollister‘s 2009 New Arrivals, such as Abercrombie Ruehl No.925 like this style.abercrombie outlet is all over the world.

  41. We pride ourselves on being agile. Client-side technology evolves quickly. We want to be able to get a preview version of the Microsoft Ajax Library out to our customers, get feedback, and make changes to the library quickly. Shipping the Microsoft Ajax Library out-of-band keeps us agile and enables us to continue to ship new versions of the library even after ASP.NET 4 ships. yellow nike shoes

  42. 00 says:

    Such accolades are something of a triumph for Mr. Ford, who was forced to finance the nearly $7 million project with his own money, after leaving gucci in 2004 and announcing that he would become an replica gucci. It was a transition some in fashion thought made perfect sense given his meticulous attention to cheap gucci — and others thought was doomed, for the same discount gucci.

  43. ed hardy says:

    Try them on ed hardy see which bulk Ed Hardy Clothing you best, you have a place for other stuff sold by the same trade,perceive i said opening thrust.” By this i mean to Cheap Ed Hardy that even within a depot you might attire two different Ed Hardy Sale of their shirt it looks like to ,which amount Discount Ed Hardy you You should buy the bulk Cheap Ed Hardy Clothing hysterics. I’m 5′11 and hangs off more, if the manufacturer cuts larger (or minor) you might necessary a medium polo shirt in both. I garments regularly Hollister and Abercrombie and erode a Ed Hardy Clothing Sale in the extent that fits you best…once you find the support strain. It looks like both tough and Discount Ed Hardy Clothing run lesser and from the pics of parallel garment…at direct for you might wear a large Ed Hardy Clothing sale polo shirt of one style, but if you are like the waist Links London 60 meager Links of London she went to shape a Discount Links of London Discount is superior and 155 pounds.

  44. tiff says:

    astro nascente di Cosa nostra e latitante dal giugno 2006, era diventato il numero due della mafia. Ma la sua nuova posizione e’ durata ben poco. Oggi pomeriggio, poco prima delle 15, il giovane, aspetto curato, pizzetto e basette maglione di cashmere e cheap MONCLER JACKETS, e’ stato arrestato dagli uomini della sezione catturandi della squadra mobile di Palermo. Il giovane boss era nascosto in un appartamento ad appena 200 metri in linea d’aria dal Palazzo di giustizia di Palermo

  45. replicas watches says:

    Do you know the difference between replica and fake? replicas watches They are absolutely different – replicas are made following the technology and design of the genuine Swiss watches whereas fake is always a fake. Our suppliers copy Rolex watches as precisely as possible – so the resemblance is just amazing.replicas watches Replicas from our shop look the same and work the same as the original Swiss watches.

  46. yes, some helpful informations and good stuff….well done and good luck in 2010

  47. some helpful informations and good stuff in this blog, well done

  48. We pride ourselves on being agile. Client-side technology evolves quickly. We want to be able to get a preview version of the Microsoft Ajax Library out to our customers, get feedback, and make changes to the library quickly. Shipping the Microsoft Ajax Library out-of-band keeps us agile and enables us to continue to ship new versions of the library even after ASP.NET 4 ships.

  49. dizi izle says:

    I have forum
    downloaded the minifier from codeplex and tried them on JS files in dizi izle
    one of my project, the tool reduced the file size by 25% in normal mode and 50% in hyper mode. Th

  50. hardysale says:

    Shoppers pay up to Cheap ED Hardy Shoes,Clothes lining. If you asylum’t experience the comfort of authentic http://www.hardysale.com/ED hardy yet then your feet have been lost out. Give t 160 for a pair of new Ed Hardy Shirts and Clothes but can have them repaired for just a part of that build. The compress began doing ED hardy repairs are actually asked to stuff in a study before you can guard the ribbon, because, according to a note on the spot, record hosting is pricey,ed hardy store

  51. Lucille says:

    I have ASP.Net installed in my browser. Do I have to install the renamed version? — Lucille; essay writer

  52. best2010 says:

    RM Converter can convert rm, rmvb to mp4, mov, mpg, mpeg, flv, mkv, avi, etc..

    RMVB Converter supports to read, convert and edit .rm files in an easy and simple way. It can convert .rm to avi, mpg, mov, mp4, m4v, flv, 3gp, mp3, flac and AAC etc. with so much video/audio file can be written, there is no doubt they’ll work smoothly in your portable player, handheld computer and home network.

    ———————–

    RM Converter || RM Converter for Mac || AVI To RM || Video To RM Converter

  53. i like the site and blog. thanks for sharing info