ASP.NET AJAX入门系列(1):概述

经常关注我的Blog的朋友可能注意到了,在我Blog的左边系列文章中,已经移除了对Atlas学习手记系列文章的推荐,因为随着ASP.NET AJAX 1.0 Beta版的发布,它们已经不再适用,为了不继续误导广大朋友,所以不再作为推荐系列文章,如果有需要参考的朋友,可以直接到随笔分类中查看。
ASP.NET AJAX Beta改动如此之大,鉴于又没有很好的中文参考资料,所以决定最近开始写作ASP.NET AJAX入门系列,这个系列我会把ASP.NET AJAX当作一个全新的东西去对待,不再考虑以前的Atlas,把自己对ASP.NET AJAX的研究与大家分享,便于初学的朋友少走一些弯路。对Atlas熟悉的朋友可以推荐看Dflying Chen的《拥抱变化——从Atlas到ASP.NET AJAX系列》,以及老赵的《深入Atlas系列》。由于个人的能力和掌握的程度有限 ,难免出现错误和遗漏的地方,还请大家多多理解和指正。
OK,让我们从这里开始!

一.ASP.NET AJAX组成部分
在ASP.NET AJAX官方网站上有如下三个下载:
1.ASP.NET AJAX:这部分是ASP.NET AJAX的核心部分,包括了核心AJAX类型系统,网络协议层(networking stack),组件模型,扩展器(extender)基类,以及与ASP.NET集成的服务器端功能(包括广受欢迎的ScriptManager,UpdatePanel,和 Timer控件)。功能列表如下:
                                                                                                                                                                                                       
           

服务端功能列表


           
            Asynchronous client-to-server networking
           
            Authentication as a Web service
           
            ControlExtender class
           
            Profile as a Web service
           
            ScriptManager and ScriptManagerProxy controls
           
            Static page methods as Web services
           
            Timer control
           
            UpdatePanel control
           
            UpdateProgress control
           
           

客户端功能列表


           
            Authentication for JavaScript
           
            Behavior class
           
            Calling .asmx Web services from JavaScript
           
            Component class
           
            Control class
           
            Debug class
           
            JavaScript Array type extensions
           
            JavaScript Boolean type extensions
           
            JavaScript Error type extensions
           
            JavaScript Number type extensions
           
            JavaScript Object type extensions
           
            JavaScript String type extensions
           
            JSON serialization
           
            Profile for JavaScript
           
            Trace class
           
2.ASP.NET AJAX “Value-Add”CTP:ASP.NET AJAX社区支持的“增值”CTP部分,包括了以前各个Atlas CTP版本包含的,但并不在完全支持的“核心”1.0 版本内的额外的高级特性。通过进一步的反馈,这些将会逐步稳定的增加到核心1.0中去。功能列表如下:
                                                                                                                                                                                                                                                                               
           

服务端功能列表


           
            AutoCompleteExtender class
           
            Cross-browser Web Parts drag-and-drop
           
            DragOverlayExtender control
           
            PopupExtender class
           
           

客户端功能列表


           
            Actions components
           
            AutoCompleteBehavior class
           
            BatchResponse class
           
            Binding component
           
            Button control
           
            Checkbox control
           
            Click behavior
           
            Counter class
           
           

Cross-browser Web Parts


           
            Data control
           
            DragDropList control
           
            DragDropManager component
           
           

DraggableListItem control


           
           

FadeAnimation component


            Floating behavior
           
            Hover behavior
           
            Hyperlink control
           
            Image control
           
            Input control
           
            Label control
           
            Layout behavior
           
            Opacity behavior
           
            Popup behavior
           
            Selector control
           
            ServiceMethodRequest class
           
            Sys.Data and Sys.UI.Data namespaces
           
            Textbox control
           
            Timer control
           
            Validator controls
           
            xml-script support
           
3.ASP.NET AJAX Control Toolkit:包含了基于ASP.NET AJAX 1.0 版“核心”下载版本的28个非常酷的免费AJAX控件。它是一个开源项目,由微软和非微软开发人员共同开发的,去CodePlex下载代码。

二.安装ASP.NET AJAX
1.在安装ASP.NET AJAX 1.0 Beta之前,需要先卸载以前所有的CTP版本。
2.下载ASP.NET AJAX 1.0 Beta安装包,安装时Microsoft.Web.Extensions.dll程序集将被安装在GAC(Global Assembly Cache)中,所以使用时不需要再在Web站点的Bin文件夹中包括该程序集。
3.下载安装ASP.NET AJAX “Value-Add”CTP和ASP.NET AJAX Control Toolkit。列表如下:
                                                                                                                                                                                                                               
           

名称


           
           

描述


           
            Accordion:
           
            Create efficient UI from multiple panes with this animated control.
           
            AlwaysVisibleControl
           
            Docks a panel to a corner of the browser window and keeps it visible even when the user scrolls.
           
            Animation
           
            Adds powerful, easy to use animations to any element or control.
           
            CascadingDropDown
           
            Easily link drop downs, complete with asynchronous population and no postbacks!
           
            CollapsiblePanel
           
            This extender allows panels on your page to collapse and expand with no code.
           
            ConfirmButton
           
            This extender adds a confirm dialog to any Button, LinkButton, or ImageButton control.
           
            DragPanel
           
            Makes any panel into an object that you can drag around the page.
           
            DropDown
           
            This extender can wrap any control to provide a SharePoint-style drop-down menu that is attached to the control.
           
            DropShadow
           
            This extender adds attractive drop shadows to any control on the page
           
            DynamicPopulate
           
            Replace the contents of a page element with the result of a web-service call.
           
            FilteredTextBox
           
            Restrict the types of input that text boxes will accept.
           
            HoverMenu
           
            Allows UI to pop up next to a control when the mouse hovers over it.
           
            ModalPopup
           
            Allows you to show styled modal UI without using HTML dialogs.
           
            MutuallyExlcusiveCheckBox
           
            By adding a number of checkboxes to the same “Key”, only one checkbox with the specified key can be checked at a time.
           
            NoBot
           
            Applies simple rules to prevent automated bots or scripts from posting to a page.
           
            NumericUpDown
           
            Allow users to easily increase and decrease values using the mouse to scroll through values.
           
            PagingBulletedList
           
            Add paging and sorting to long bulleted lists.
           
            PasswordStrength
           
            Give your users visual cues to help them create secure passwords.
           
            PopupControl
           
            This extender turns any panel into a popup.
           
            Rating
           
            Let your users easily give feedback by rating content with this easy-to-use control.
           
            ReorderList
           
            This control is a full-featured data-bound control that allows its elements to be reordered on the client via drag and drop.
           
            ResizableControl
           
            Allow users to dynamically resize content, right in the browser
           
            RoundedCorners
           
            Rounds the corners of any control for a clean, professional look!
           
            Slider
           
            Adds an elegant scrollbar-like user interface for setting numeric values.
           
            TextBoxWatermark
           
            This extender adds "watermark" prompt text to TextBoxes on the page.
           
            ToggleButton
           
            This extender turns an ASP.NET CheckBox into an image checkbox.
           
            UpdatePanelAnimation
           
            Animates page elements corresponding to hidden postback activity.
           
            ValidatorCallout
           
            This extender enhances the functionality of existing ASP.NET validators.
           

三.在Visual Studio.NET 2005开发基于ASP.NET AJAX的应用
安装完ASP.NET AJAX后,打开Visual Studio.NET 2005中新建Web Site,在项目模板中会出现一项ASP.NET AJAX-enabled Web site,直接选择它就可以了,如下图:

新建完成的项目中会自动在Web.config中做好相关的配置,并且AJAXExtensionToolbox.dll已经添加到了VS的工具箱中,不需要再手工添加。

概述篇简单的介绍这里,从下一篇开始学习ASP.NET AJAX中的每一项具体的功能。
下篇预告:ASP.NET AJAX入门系列(2):使用ScriptManager
作者:TerryLee
出处:http://terrylee.cnblogs.com
金鳞岂是池中物,一遇风云便化龙