Asp.net中的AJAX学习记录之一 AJAX技术的崛起与Asp.net AJAX的诞生

简介:
   最近开始学习Asp.net中的AJAX,可能我的高手朋友们会说:“走还不稳呢!怎么就想学跑了?”呵呵!主要是我在做项目中体会到AJAX真的是很好的一门技术,应该好好的学习一下,以后也作为自己的一个技术点,慢慢的积累,逐渐掌握。下面是我在我现在学习的《ASP.net AJAX与Silverlight 实战手册》中摘抄的部分文章话语,写的很明了,至少我一遍就看懂了笔者所描述的AJAX产生的背景,()之中加入了我的理解及现实实例,把它费时的打出来,让路过的朋友也可以分享一下。
         在网页开发模式的不断进化之时,原本理所当然的页面刷新操作,慢慢的也变成一种不友善、没有效率的表现,随着网页上呈现的内容越来越多,样式越老越多元化,与用户互动的部分也越来越多。(每次刷新其实就以为着再次打开这个页面后,所有用户操作的旧的信息都会全部归0,相信大家都遇到过注册用户这个步骤吧,我的一个高手朋友周公,就在他的博客中,谈到过他曾经遇到过的一件事,很多年前,带宽很窄,在他填写完一个网站的注册信息后,若干分钟后,弹出“用户名已存在”的对话框,乃至他对此事记忆犹新。同样在我们按照注册要求填写好信息提交后,最不想看到的就是非用户操作引起的注册失败,比如许多与数据库相关的验证、储存数据等操作最后还得送到服务端来处理,早期的技术不能实现想现在大多网站在我们输入用户名后,点击网页提供的按钮,提前检查你所登记的用户名是否存在的这个注册失败条件,你不必等待网站的反馈信息,可以继续填写余下的注册条件,即使返回了失败的信息,你只需修改新的用户名,不会影响你已经填写好下面的信息,这种(AJAX)技术实现了网页的局部刷新,提高了用户操作的方便性。)
        XMLHttpRequest的诞生
 
        页面刷新是为了要将数据送回服务器端,然后有服务器端取得更新后的页面来显示,那么如果能在不刷新页面的情况下,将数据送往服务器端,就解决了页面刷新的问题了。很幸运地,有微软推出的IE打破了这个僵局,在XML盛行的初期,修改了一部分浏览器的设计概念,允许设计师在js中创建一个 ActiveX它是一些软件组件或对象,可以将其插入到WEB网页或其它应用程序中。http://www.baidu.com/s?wd=ActiveX)对象 :XMLHttpRequest,利用这个对象,设计师可以用js将数据直接送到服务器而不引发页面刷新的操作,只是在当时这个功能没有公认的成为浏览器的标准,直至今日,除了IE其他的主流浏览器,如Netscape、Mozilla都已支持同样的功能,让XMLHttpRequest在一瞬间成了标准之外的热门技术,以此对象为核心的新名词AJAX全名是“Asynchronous JavaScript And XML” 也就诞生了,Asynchronous的语义来源于XMLHttpRequest所采取的异步行为模式,使用XMLHttpRequest发送数据时,必须指定一个接收返回数据的函数,送出数据后,客户端不必停下来等候数据的返回,XMLHttpRequest取得返回数据后,会调用指定的函数将数据传过去。
      在创建XMLHttpRequest对象时,指定processRequest函数为收取返回数据的函数,在XMLHttpRequest的send函数被调用后,XMLHttpRequest即发送要求,需特别注意的一点是,send函数不会像传统函数调用般等待要求被处理后而收取返回值,而是直接返回,继续运行下面的js程序,或将主导权还给浏览器,此行为模式正是AJAX中的Asynchronous语义来源。AJAX中的J代表JavaScript,虽然IE可以用vbscript来使用XMLHttpRequest对象,但是JavaScript才是诸多浏览器所支持的标准语言,因此AJAX中的J代表的是启动XMLHttpRequest对象时所使用的语言。AJAX中的第二个A代表的是and,最后的X代表的是使用XMLHttpRequest对象是所使用的数据协议,也就是XML文件格式。
    百家争鸣的AJAX Framework
 
      在XMLHttpRequest受到瞩目不久,网络上开始出现许多以XMLHttpRequest为根基的Framework,这些FrameWork大多数是以开源的方式授权,大致可以分为两大派别:一派:主张单纯的js来构建UI(即User Interface(用户界面)的简称),再利用XMLHttpRequest与服务器沟通,这个派别产品最大的特色就是绚丽的ui效果及最小化后端依赖的设计;另一派则是维持以后端为主、js为辅的架构,这个派别的产品最大的特色技术后端依赖比较搞,适合对JavaScript不甚熟悉的设计师选用。
 
    是终点还是起点,Silverlight、AIR、JavaFX
 
       2005年12月5日, Adobe(http://zhidao.baidu.com/question/10066667.html?si=1)公司以34亿美元的天价收购了以Flash风靡全球的Macromedia(http://baike.baidu.com/view/8375.htm)后,喊出了RIA的概念,推出了AIR(她的全称是”Adobe Integrated Runtime”由Adobe开发, 原代号为Apollo(阿波罗),她是一个跨操作系统运行环境,允许开发人员利用他们现有的网络开发技术(如Flash, Flex, HTML, JavaScript, PDF)在桌面系统建立和部署富互联网应用。
从本质上讲,她提供了一个桌面与浏览器结合的平台,并达到网络模式结合桌面模式功能和丰富形式的开发模式。)的产品线,将html由主角变成配角,在网页上体现出友善、类似Windows GUI(就是WINDOWS的图形用户接口,像windows对话框、菜单等)的界面。面对Adobe公司的大动作,身为开发工具领导厂商的sun与microsoft当然不能落后,microsoft首先推出了Silverlight,而且一次推出两个世代的产品,silverlight1.0不久拥有与Flash不相上下的2D绘图及影音支持,更好的是它使用js为主要开发之程序语言,silverlight1.1 Alpha则更进一步,资产c#、vb.net等.net程序语言,提供小型的.net FrameWork(SLR)让原本使用.net Framework的程序员更轻松地利用silverlight1.1来构建新一代的RIA网页应用程序。随后sun公司则推出了JavaFX,同样支持2D绘图与影音能力,JavaFX的目标似乎不在桌面应用上,而是在消费性电子产品上。
          Asp.net  AJAX的诞生
 
         2005年下半年microsoft推出了ASP.net专属的AJAX Framework:Atlas Framework。与其他AJAX Framework不同的是,Atlas以client与server端集成的角度来实现AJAX技术,除了提供了以js所打造的而成的AJAX Client Framework 之外,Atlas同时也提供了数个ASP.net server control,借助这些控件的强力支持,Atlas Framework可以让开发者一行js代码都不用写,建构出拥有AJAX功能的ASP.net网页应用程序。其中最令人感到震撼的是updatepanel控件,其内可以放入大多数的ASP.net控件,2007年推出Atlas Framework的正式版,更名为 ASP.NET AJAX Framework。但是只有ASP.net 2.0才能享受到ASP.NET AJAX 带来的便利。获得ASP.NET AJAX 的方法很简单,只要链接到ASP.NET AJAX 的下载网页即可下载。(Http://www.asp.net/ajax/downloads)(vs2008专业版中自带了ASP.NET AJAX ,不需再按装)。   
本文转自叶子文文博客51CTO博客,原文链接http://blog.51cto.com/leafwf/185677如需转载请自行联系原作者

叶子文文
相关文章
|
7月前
|
监控 Cloud Native 测试技术
.NET技术深度解析:现代企业级开发指南
每日激励:“不要一直责怪过去的自己,他曾经站在雾里也很迷茫”。我是蒋星熠Jaxonic,一名在代码宇宙中探索的极客旅人。从.NET Framework到.NET 8,我深耕跨平台、高性能、云原生开发,践行领域驱动设计与微服务架构,用代码书写技术诗篇。分享架构演进、性能优化与AI融合前沿,助力开发者在二进制星河中逐光前行。关注我,共探技术无限可能!
.NET技术深度解析:现代企业级开发指南
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
569 0
|
开发框架 算法 .NET
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
290 6
|
开发框架 Cloud Native .NET
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
334 6
|
开发框架 安全 .NET
在数字化时代,.NET 技术凭借跨平台兼容性、丰富的开发工具和框架、高效的性能及强大的安全稳定性,成为软件开发的重要支柱
在数字化时代,.NET 技术凭借跨平台兼容性、丰富的开发工具和框架、高效的性能及强大的安全稳定性,成为软件开发的重要支柱。它不仅加速了应用开发进程,提升了开发质量和可靠性,还促进了创新和业务发展,培养了专业人才和技术社区,为软件开发和数字化转型做出了重要贡献。
408 5
|
传感器 人工智能 供应链
.NET开发技术在数字化时代的创新作用,从高效的开发环境、强大的性能表现、丰富的库和框架资源等方面揭示了其关键优势。
本文深入探讨了.NET开发技术在数字化时代的创新作用,从高效的开发环境、强大的性能表现、丰富的库和框架资源等方面揭示了其关键优势。通过企业级应用、Web应用及移动应用的创新案例,展示了.NET在各领域的广泛应用和巨大潜力。展望未来,.NET将与新兴技术深度融合,拓展跨平台开发,推动云原生应用发展,持续创新。
236 4
|
开发框架 .NET C#
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位。从企业应用到电子商务,再到移动开发,.NET 均展现出卓越性能,助力开发者提升效率与项目质量,推动行业持续发展。
444 4
|
机器学习/深度学习 人工智能 Cloud Native
在数字化时代,.NET 技术凭借其跨平台兼容性、丰富的类库和工具集以及卓越的性能与效率,成为软件开发的重要平台
在数字化时代,.NET 技术凭借其跨平台兼容性、丰富的类库和工具集以及卓越的性能与效率,成为软件开发的重要平台。本文深入解析 .NET 的核心优势,探讨其在企业级应用、Web 开发及移动应用等领域的应用案例,并展望未来在人工智能、云原生等方面的发展趋势。
435 3
|
敏捷开发 缓存 中间件
.NET技术的高效开发模式,涵盖面向对象编程、良好架构设计及高效代码编写与管理三大关键要素
本文深入探讨了.NET技术的高效开发模式,涵盖面向对象编程、良好架构设计及高效代码编写与管理三大关键要素,并通过企业级应用和Web应用开发的实践案例,展示了如何在实际项目中应用这些模式,旨在为开发者提供有益的参考和指导。
197 3
|
开发框架 安全 Java
.NET技术的独特魅力与优势,涵盖高效的开发体验、强大的性能表现、高度的可扩展性及丰富的生态系统等方面,展示了其在软件开发领域的核心竞争力
本文深入探讨了.NET技术的独特魅力与优势,涵盖高效的开发体验、强大的性能表现、高度的可扩展性及丰富的生态系统等方面,展示了其在软件开发领域的核心竞争力。.NET不仅支持跨平台开发,具备出色的安全性和稳定性,还能与多种技术无缝集成,为企业级应用提供全面支持。
565 3