




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Atlas:将Ajax提升到新的高度在第一章中,我介绍了Ajax的使用方法,并且创建了一个示例程序,演示如何应用Ajax技术编写异步响应用户输入的页面。在本章中,我将介绍微软公司对ASP.NET 2.0的扩展Atlas。应用Atlas,可以更容易地创建Ajax类型的应用程序,并使用Visual Studio 2005控制它的开发、部署以及调试。 ASP.NET Atlas是一系列技术的集合,它包含一些部署到客户端的脚本库,用于实现一些常用的功能和编程特性。只需要将这些JavaScript脚本库包含在页面中即可使用。可能更重要的是,Atlas同样提供可被包含在页面中的服务器端控件,可以生成运行于浏览器中的HTML和JavaScript代码。通过使用这些服务器端控件,开发者无需亲自编写太多代码,即可将适当JavaScript发送给客户端HTML和JavaScript将由服务器端的ASP.NET控件生成。这种架构是ASP.NET最基础的理念之一,也是理解Atlas所必需的。在本章中,将学习到Atlas的完整架构,以及Atlas是如何与ASP.NET 2.0结合在一起的。2.1 ASP.NET 2.0服务器端控件介绍 若想更好地理解Atlas及其架构,首先应该理解ASP.NET 2.0的服务器端控件。服务器端控件是ASP.NET框架的基础部分之一。作为ASP.NET框架的核心,服务器端控件是.NET框架中的一些表示Web Form上可视化元素的类。一些服务器端控件几乎就是某些标准HTML标签的简单映射,并提供一些服务器端的高效实现。而另外一些服务器端控件则是更大规模的抽象,封装了复杂的GUI任务,例如页面中显示数据的网格等,并最终输出成HTML表示。需要特别注意的是,使用服务器端控件的应用程序最终仍将呈现在浏览器中。更明确地讲,服务器协调控件的逻辑,并将其生成的HTML和/或JavaScript发送给浏览器并呈现出来。服务器端控件可分为如下几种:q HTML服务器端控件(HTML server control):这类控件包装了标准的HTML标签,使用runat=“server”声明。例如HtmlAnchor控件,是标签(锚标签)的服务器端表示。q Web控件(Web control):这类控件重复了基本HTML标签的功能,但却拥有在整个范围之内标准化的方法和属性,让开发者更易于使用。很多Web控件类似于HTML服务器端控件(例如Button控件),但它们的API是为C#和其他.NET开发者设计的,而不仅仅是标准HTML控件API的重复。所以,这种一致化的API在开发中更容易使用,特别是对于那些没有太多HTML经验的开发者而言。q 富控件(rich control):这是一类专门的Web控件,实际上十分复杂并生成大量的HTML和JavaScript。例如Calendar(日历)控件。q 验证控件(validation control):这类控件按照一个预先定义的标准来验证用户输入。例如验证输入是否为合法的电话号码或邮政编码。它们封装了在Web Form上验证并显示结果的逻辑与实现。q 数据控件(data control):这类控件用来封装并显示大量数据,例如一些网格和列表类型的控件。数据控件支持一些高级特性,例如使用模板、编辑、排序、分页以及过滤等。q 导航控件(navigation control):这类控件用于显示站点地图(Site Map),为用户提供站点导航等。q 登录控件(login control):这类控件内置对表单认证(Form Authentication)的支持,为网站提供一套齐全的、立即可使用的用户认证解决方案。q Web部件控件(Web part control):这类控件用于构建运行于Windows SharePoint服务下的网络入口组件1。q 移动设备控件(mobile control):这类控件用于在移动设备,例如个人数字助理(PDA)和智能电话上呈现内容的应用。演示服务器端控件强大功能的最好方式就是通过示例程序。打开Visual Studio 2005,创建一个名为Atlas2的ASP.NET网站。从工具栏的标准选项卡中将Calendar控件拖放到Default.aspx页面(由Visual Studio自动创建)的设计界面中。你将看到类似图2-1的界面。若切换到Default.aspx页面的源文件,可以看到一些很简单的HTML,并没有太多的代码的确不够呈现出刚刚看到的那个日历,更不用提那些与用户交互的功能了,比如选取日期、在月份之间导航等。图2-2显示了这段代码。图2-1 在Default页面中添加一个日历图2-2 查看日历页面的服务器端代码实现日历功能的代码是这一行:ASP.NET在运行时使用内建的Calender控件处理上述代码,并生成HTML。类似地,VS.NET同样使用ASP.NET内建的Calender控件在IDE中以可视化方式显示。生成的HTML与图2-2中的代码完全不同,因为这是服务器端控件以HTML代码呈现后的结果。图2-3显示了页面呈现在IE中的样子。图2-3 浏览器中的日历页面使用浏览器的ViewSource功能,可以查看生成的HTML和JavaScript(参见图2-4)。可以看到生成的HTML与图2-2中的代码完全不同,替代控件的,是一个包含了用于渲染日历的布局和信息的HTML 标签。这些HTML标签用于显示月份、日期等。还有一些JavaScript代码,让用户可以在月份之间前后导航。图2-4 查看日历页面客户端代码上述例子演示了服务器端控件的强大功能。使用类似的控件,你无须过多地关注复杂的、需要手动编写的JavaScript代码(这种复杂性在第1章中已经被证实),即可将包含Ajax功能的页面发送给浏览器。你还可以充分利用专业的IDE所带来的优势,非常容易地调试和管理Atlas应用程序,就和标准的Web Form或Windows应用程序一样。这种开发模型是Atlas的主要设计目标之一。我们都知道,创建基于Ajax技术的Web应用程序比较复杂,需要开发者掌握大量的客户端脚本知识,而这往往使开发和调试变得很缓慢。正因为如此,微软公司开发出了一系列的Ajax API,使用这个API,开发人员可以继续沿用他们熟悉的Visual Studio中高效开发的经验,并用此创建更好地满足用户体验的Web应用程序。Atlas在两方面扩展了Ajax的概念。首先,Atlas将很多常用的JavaScript操作封装成为客户端脚本库,这样大大简化了例如创建富用户界面(rich UI)、调用远程服务等的操作。同时,Atlas对JavaScript的扩充也使其拥有了真正的面向对象编程接口。无论你的网站建立在何种平台上,都可以使用这些脚本库来实现Ajax。有关Atlas的客户端脚本库将在第3章中详细介绍。该框架也为客户端应用程序的开发带来了新的方法Atlas脚本(Atlas script),一种基于XML声明的标记性语言。Atlas脚本将XML元素和实际的HTML元素对应了起来。这些XML元素可以拥有与HTML元素相关联的属性,并使用子标签定义它的行为和动作等。在运行时,Atlas将解析这些脚本,并根据它生成适当的运行时行为。其次,Atlas提供了一个服务器端开发的平台,与ASP.NET 2.0结合起来。当与ASP.NET 2.0同时使用时,Atlas提供的编程模型将大大降低建立拥有丰富的Ajax用户体验的网站的难度。并且,Atlas还让开发者可以很容易地扩展现有的ASP.NET应用程序,使其拥有Aj
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 乡村振兴战略下职业技能培训对乡村经济结构调整的影响报告
- 808激光脱毛培训课件
- 中国卫生监督培训课件
- 员工安全操作课件
- 系文宣部培训大会
- 中国传统节日课件背景
- 幼师教育案例分享
- 浙大中控培训
- 制作商务培训
- 企业法治教育培训
- 图解“双均线双交叉”期货、股票操作系统课件
- 小学语文扩句、缩句专题
- 农村公路安全生命防护工程施工方案
- (部编版)统编版小学语文教材目录(一至六年级上册下册齐全)
- 抗滑桩专项的施工组织方案[专家评审]
- 常用弹簧钢号对照表
- 应用回归分析(第三版)何晓群_刘文卿_课后习题答案_完整版
- 小学二年级下册劳动教案
- 食品安全及卫生保证措施
- 60m3卧式液化石油气储罐设计
- 树脂的污染及处理
评论
0/150
提交评论