探究基于asp.netajax在web数据开发中的应用由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“web数据库应用实例”。
探究基于ASP.NET AJAX在Web数据开发中的应用
摘要:AJAX是实现Web数据开发的一种重要技术,能够有效降低整页刷新时,白屏现象的发生频率,也能有效减轻服务器负荷。随着新ASP.NET.AJAX框架的推出,由于它们与ASP.NET2.0无缝结合,大大降低了程序员开发Web的难度。关键词:ASP.NET;AJAX;Web开发
AJAX(Asynchronous JavaScript And XML)技术服务宗旨在于提高Web应用程序交互性及其运行速度。通常情况下,该技术多采用SOAP与XML等通讯技术对服务器异步请求/相应进行发送与接收,再利用JavaScript、HTML等显示技术对响应进行处理。
一、ASP.NET AJAX体系结构
ASP.NET AJAX主要由两部分组成:客户端脚本库与服务器。具体结构如下:
(一)客户端体系结构
ASP.NET中的客户端脚本库(AJAX)的主要构成文件为JavaScript(.js),主要用于面向对象开发,主要分为以下五个内容:浏览器兼容层,用来解决Microsoft Internet Explorer、Apple Safari等常用浏览器Microsoft AJAX脚本的兼容问题;网络层,实现建立在Web基础上的浏览器脚本服务与应用程序之间的通信,调用异步远程管理方法,支持在客户端脚本中访问服务器,并提供Forms身份验证、角色信息以及配置文件信息等;ASP.NET AJAX基础类库,包含了用来生成字符串的生成器、扩展错误处理等组件;ASP.NET AJAX客户端控件或组件,其中包括与ASP.NET服务器端控件相似的,且具有良好封装的模块化客户端控件与组件。
(二)服务器端体系结构
微软公司特地设计了一组特意针对ASP.NET应用程序的AJAX服务器控件,并将现有的ASP.NET页面框架与控件进行升级与加强,用来更好的支持ASP.NET AJAX客户端脚本框架。在客户端上严格执行、并严格处理客户端脚本库是AJAX基于ASP.NET功能的重要体现,AJAX的功能也能由支持从服务器发送到客户端脚本的服务器控件来实现,也能基于ASP.NET应用程序创建自定义客户端脚本。在ASP.NET中AJAX功能基础上,可用客户端脚本实现ASP.NET Web服务(.asmx)与Windows Communication Foundation(WCF)服务(.svc)的调用。
二、ASP.NET AJAX在Web开发中的应用
(一)使用ScriptManager控件调用Web服务
脚本管理空间ScriptManager作为运行AJAX程序的重要前提,在不需要任何可视界面Web控件的条件下,实现页面局部更新及页面全部组件的处理,由此生成相关客户端代理脚
[1]本,其主要目的是实现在JavaScript中访问Web Service等。
Web Service是常见的在客户端利用ScriptManager注册的服务器端代码,主要用来实现在JavaScript中调用Web服务,包括自定义服务与内置应用程序服务。
JavaScript中Web服务器调用需通过三个步骤实现:先要创建一个Web服务,在客户端中注册该服务,最后在JavaScript中运用该Web服务。
(二)UpdatePanel控件实现局部更新
局部更新是ASP.NET技术的基础,是基于ASP.NET的核心技术。UpdatePanel的功能是实现Web应用程序局部更新的创建,主要表现在不刷新整个页面的前提下,对指定页面的某个区域更新。通过多个UpdatePanel空间还可实现不同区域单独更新。
UpdatePanel控件具有Content Template与Triggers两个重要标签。Content Template标签主要作用是对UpdatePanel的内容进行定义,程序员能够在开发过程中可以放置任何ASP.NET控件,ContentTemplate 标签给这些控件提供了页面无刷新更新操作的技术平台。Triggers标签指的是拒不更新触发器,包含Async PostBackTrigge异步回传触发器与PostBackTrigge触发器。
Async PostBackTrigge异步回传触发器对指定控件中某个事件触发异步回传(又称局部更新),具有ControlID与EventName两种属性,ControlID指定控件ID,EventName指定控件事件,当EventName值尚不明确时,自动采用控件默认值。譬如Button按钮就属于一种Click单击事件。将UpdatePanel的外部控件ID设置成ControlID,可实现外部控件对UpdatePanel更新的控制,PostBackTrigge触发器为非异步回传触发器,主要作用是指定在UpdatePanel中的某个服务器端控件,进行整页回送。
以下为使用ScriptManager与UpdatePanel创建的两个独立更新区域页面步骤:①启动Visual Studio 2010,在此开发环境下建立一个ASP.NET Web应用程序;②切换至设计视图,在工具箱“AJAX Exten sions”选项中,找到ScriptManager控件,双击,在页面中添加ScriptManager控件;③在工具箱中找到UpdatePanel控件,并重复双击两次,在页面中添加两个UpdatePanel控件;④设置Text属性为“显示刷新时间”的Label控件添加到其中一个UpdatePanel控件中;⑤在第④步基础上,再添加一个Text属性为“刷新”的Button控件;⑥将Calendar控件添加到另一个UpdatePanel控件中;⑦双击“刷新”按钮,给Click事件添加处理程序。将以下代码编写到处理程序中,能够将当前时间设置到Label控件中:
protected void Button1_Click(object sender, EventArgs e){ Label1.Text = DateTime.Now.ToString();} ⑧单击“刷新”按钮,能使上次的刷新时间以文本形式在面板中显示;⑨将日历中的时间移动到不同月份,不会使另一个面板中的时间发生改变,两个面板中的数据均单独更新。下面为切换至源视图的主要代码:
页面正在刷新...(四)Timer控件实现定时刷新
Timer控件的主要作用是圈定一个固定的时间范围,执行提交操作需在规定的时间内完成。通过Timer控件可对整个页面进行执行提交操作,在与UpdatePanel控件共同作用下,在规定的时间内,执行部分页面刷新操作。Interval属性的设置,能够指定执行的回传频率,单位ms。在Timer控件启动,并开始一个回送时,Timer控件基于服务器端引发Tick事件,能够给Tick事件创建一个用来执行页面发送服务器请求的处理程序。与此同时,需注意的是,若Timer控件中的Interval属性值设置太小的话,会致使web服务器严重阻塞。因此,只有页面上的部分内容必要且需频繁刷新时,才可考虑采用Timer控件。
(五)AJAX Control Toolkit AJAX Control Toolkit是ASP.NET AJAX的拓展,属于一种控件包,具有30多种给予ASP.NET AJAX具有某种具有专一性的服务器控件。在ASP.NET 2.0 AJAX Extensions上面创建AJAX Control Toolkit,满足了一下三个需要:其一,给程序员提供了获取组件的平台,以便与构建与这些组件相应的Web应用程序;其二,给予客户端程序员提供强大的示例集;其三,是彰显脚本开发人员卓越技术的重要体现。
开发环境Visual Studio 2010本身不具有AJAX ControlToolkit 控件,必须下载安装后才能使用。下载方法为:由正规的网络资源中,下载得到AjaxControlToolkit.Binary.NET4.rar,进行解压;单击右键,打开Visual Studio2010 Web 项目的工具箱,找到“添加选项卡”,单击,这时出现一个文本框,在里面填写“Ajax Control Toolkit”,确定(回车键);在由上一步骤创建的Ajax Control Toolkit选项卡上单击右键,点击“选择项”,在弹出的“选择工具箱项”对话框中,点击“浏览”,找到AjaxControlToolkit.dll,单击“确定”,如此便能把AJAX Control Toolkit控件添加到工具中。结束语
AJAX是一种基于Web标准的用以创建交互式网页应用的技术,通过异步调用方式实现部分页面刷新,因此Web能够只向服务器传送、接收自己所需的数据,不仅可以减少网络流量,还能提高Web应用程序的及时响应性,给用户提供更好的交互式网页与更加便捷的个性化服务,便于用户使用Web应用程序时,就像使用桌面应用程序那样轻松快捷。
AJAX分离了数据和呈现,与服务器端合理分配工作,服务器端负责数据的逻辑处理,AJAX则负责Web界面的数据呈现工作。这样分工合作,有利于降低非专业人员修改页面导致的Web应用程序错误,提高了程序的开发效率。ASP.NET AJAX是微软公司所推出的专门针对ASP.NET应用程序的AJAX应用框架,不仅拥有可视化开发界面,使程序员能够在Visual Studio 2010环境中充分发挥自己的技术,开发AJAX程序轻松自如、游刃有余。通过对ASP.NET Ajax的使用,极大程度上提高了用户页面体验以及Web应用程序的开发质量与效率。参考文献:
[1]仰燕兰,金晓雪,叶桦.ASP.NET AJAX框架研究及其在Web开发中的应用[J].计算机应用与软件,2011,06:195-198.[2]怀艾芹.AJAX技术在Web系统开发中的研究及应用[J].计算机时代,2010,09:55-57.[3]微计算机信息2010年总目录[J].微计算机信息,2010,36:287-314.[3][2]
西 安 邮 电 大 学 (计算机学院)《Web应用开发》课内实验报告题 目: 剧院系统的登陆与验证 专业名称: 软件工程班 级: 软件1405 学生姓名: 指导教师:起止时间: 2016年10月12日---......
人力611696112张伟策划报告:库存管理信息系统的开发 当今社会为信息社会,世界已进入在计算机信息管理领域中激烈竞争的时代。信息已成为继劳动力、土地、资本之后的又一大资源......
1知如何能够投其所好,为用户实现主动推荐,提供个性化服务;这些都是电子商务成败的关键问题。在这种新型的商务模式下,如何对网络上大量的信息进行有效组织利用,帮助海量数据的拥......
Web开发技术及其应用学习心得从大学开始接触Web应用开发技术,但是大学里概念性的东西过强,导致学完后对于如何实际应用开发并不是很有条理。一、何为Web应用程序我刚开始学习......
《Web应用开发技术课程设计》要求课程代码: 8256041课程类别: 专业必修学分: 2 实践周数: 2一﹑目的与任务Web应用开发课程设计是信息学院信息管理与信息系统专业的实践选修课,目的......