3
前言在最近的一年以及今后的三五年内,我们有理由相信Web应用程序将受到更多开发者和用户的青睐.作为领路人的Google使用了一系列基于Web的产品,甚至颠覆了传统的网页概念,用户甚至不敢相信基于浏览器的程序竟能实现如此强大的功能.浏览器这座宝库在沉睡多年之后终于被一个名为Ajax的"阿里巴巴"轻轻打开了一道缝隙.微软公司自然不会对这片新大陆坐视不理.ASP.NETAJAX(开发代号Atlas)作为微软首推的下一代网络用户界面的核心Ajax框架就这样应运而生了.虽然来得迟了一些,但出现后却立即得到开发者极为广泛的关注.依我之愚见,有如下几个原因:l功能强大:Ajax的"框架"有很多,但其中大多数与其说是框架,不如说是一些"类库"或"辅助函数库",所能实现的也仅仅是让客户端的JavaScript调用XMLHttpRequest更加容易一些等简单的辅助功能.ASP.NETAJAX作为微软的一整套Ajax解决方案,而提供了众多其他框架难以企及的完善而强大的功能,例如JavaScript的完全面向对象支持,服务器端对客户端功能的封装等.l与ASP.NET结合紧密:随着对富客户端功能越来越多的需求,设计之初并没有考虑到纯粹的ASP.NET2.0在刚刚出世之后就会立即陷入被淘汰的边缘,这时ASP.NETAJAX作为ASP.NET最重要的客户端补充及时出现,二者珠联璧合,交相辉映,使微软的Web解决方案能够上下贯通,趋于完美.ASP.NETAJAX也将在正式发布时成为ASP.NET3.0的一部分.l易于使用:ASP.NET提出的服务器端页面模型是Web开发中的一次革命,它将
HTML代码依照逻辑从属关系用服务器端控件封装起来,极大地提高了Web开发的效率.ASP.NETAJAX在这一点上和ASP.NET一脉相承,不过它作为ASP.NET在客户端的补充,将HTML标签作为客户端控件封装了起来.众所周知,HTML
文档是结构化的,加上服务器和客户端的无状态
通信过程,导致了其开发模型大多以面向过程为主.而通过ASP.NET和ASP.NETAJAX的这种基于控件和组件的封装,开发者可以容易地使用流行且更加合理的面向对象方式来设计Web应用程序.加之强大的VisualStudio支持,哪怕开发者不书写,甚至不懂得JavaScript,都能够创建出无以伦比的客户端Ajax应用程序.l开发模式新颖:所谓"树大招风",微软公司在开发者,特别是开源阵营的开发者中口碑并不是很好,并往往被冠以"独断专横"的恶名.然而ASP.NETAJAX的开发模式却与微软公司传统的产品开发模式大相径庭.在微软公司内,传统的开发模式是在软件即将上市时发布一到两个Beta版本,并只对这个版本进行很少的修改后就正式发布,这往往导致了如此的结果:辛辛苦苦开发出的产品功能非常强大,但却不是用户所需要的,或是用户觉得使用起来并不顺手.ASP.NETAJAX的开发充分吸取了这一教训,在大约一年半的开发过程中,每4~6周会发布一个最新的预览版本,更快地得到用户的反馈,并随之对产品的发展方向加以调整.将近一年的开发历程证明,这种方式受到了社区非同寻常的好评,也使ASP.NETAJAX框架的形象变得平易近人,甚至好多微软"敌对"阵营(例如PHP,Java等)的开发者都在各自的平台上开始使用ASP.NETAJAX.综上所述,ASP.NETAJAX的前景一片乐观,定当在未来的几年内受到越来越多的开发者的关注,并毫无疑问地成为如同ASP.NET一样令人瞩目的开发框架.内容介绍作为一门还在发展中的技术,ASP.NETAJAX才刚刚发布了初始的1.0版本,甚至目前尚无完
4
备的参考文档等官方资源.因此,我将在书中讲述ASP.NETAJAX的方方面面,从最基础的"HelloWorld"示例到复杂的整站程序和底层的实现原理分析,从最简单的客户端效果到其深层次的用户心
理学分析及用户体验改善.正因为本书的介绍范围广泛,所以有必要将其分3卷出版,以便于读者根据实际需要有所选择地进行阅读.而这3卷中的核心思想则始终是提高用户体验,这也正是Ajax的根本理念.第Ⅰ卷:服务器端ASP.NETAJAXExtensions与ASP.NETAJAXControlToolkit第Ⅰ卷就是你现在看到的这本书.从最易于理解和使用的部分入手,介绍ASP.NETAJAX框架中能够与传统ASP.NET无缝对接的服务器端部分,包括服务器端ASP.NETAJAXExtensions与ASP.NETAJAXControlToolkit.这部分内容不需要读者具备任何客户端开发知识,只要在VisualStudio中拖拖拽拽即可实现强大的客