问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

.net framework 2.0 ajax的下载

发布网友 发布时间:2022-04-27 19:19

我来回答

2个回答

懂视网 时间:2022-04-27 23:40

主题:.NET2.0环境下的Ajax选型和应用

研究需要解决的问题: 1 Ajax 应用框架的选型及其性能对比 2 如何应用 Ajax 3 应用 Ajax 过程中应该着重注意的问题 研究者: Jimmy.Ke 时间: 2006-11-13

一 Demo说明

Ajax Demo Web Site 是一个完整的 .NET Website ,其中包含 5 个 ASPX 页面及其对应的 CS 文件。 为了方便对比, Demo 中使用了三种 Ajax 应用方式: 一是使用微软提供的 Atlas 应用框架,二是使用 Ajax.NET Professional 开源框架,三是使用针对 Ajax 的单纯的 Javascript 包 Prototype 。三者对应的关联文件如下表所示:
应用方式 文件名称 描述
  Default.aspx 首页导航,列出四个 Demo 页面的链接
Atlas AtlasDemo.aspx 使用 Atlas 实现 Product 的 CRUD 功能,通过 UpdatePanel 完成无刷新操作。
 
AjaxPro AjaxProDemo.aspx 使用 Ajax.NET Pro 实现 Product 的 CRUD 功能,编辑、删除操作返回 true/false 的结果,通过 .NET DataGrid 控件实现页面数据列表的呈现( HTML )。
 
  AjaxProDemoSecond.aspx 使用 Ajax.NET Pro 实现 Product 的 CRUD 功能,编辑、删除操作返回所有的 Product 列表,通过 .NET DataGrid 控件实现页面数据列表的呈现( HTML )。
 
Prototype PrototypeDemo.aspx 使用 Prototype 实现 Product 的 CRUD 功能,编辑、删除操作返回所有的 Product 列表, Client 和 Server 的数据以 JSON 格式传输。
 
 
  Product.cs Product 实体类

二 研究结论

1 Ajax 应用框架选型

Ajax 应用的核心是通过 XMLHttpRequest 对象向 Server 提交 Client 的请求,同步或者异步的获取 Server 返回的 Response 信息,而 Client 和 Server 之前数据传递的方式可以采用 Text 、 XML 或者 JSON 格式。 Demo 中使用到的 Prototype 、 Ajax.NET Pro 、 Atlas Beta2 代表了目前 Ajax 应用的三种主要方式: Prototype 是目前应用比较广泛的最底层的远程调用工具包,其通常使用自己的 API 封装 XMLHttpRequest 对象,使得调用 XMLHttpRequest 更加简单直观。在 XMLHttpRequest 之前,我们通常使用内嵌的 IFRAME 来实现无刷新页面发送 http 请求的效果。因此,这些远程调用包必须支持那些不支持 XMLHttpRequest 的浏览器,以提高浏览器兼容性。类似的工具还比如 DOJO 。这类工具在应用过程中需要设定自己的 URL 和参数,并且编写相应的 callback 函数来处理 Server 返回的 Response 结果。 在 PrototypeDemo.aspx 中,我们通过 Ajax.Request 向服务器提交请求,在 callback 函数中实现对 Server 的 Response 结果的处理和显示。当然,每个请求的 URL 参数是不同的。 Ajax.NET Pro 则是一种基于基于代理实现的 Ajax 框架,其允许 Client 的 Javascript 直接与 Server 的类实现一一映射,使 Client 的 Javascript 可以通过他们直接访问 Server 的类对象及其 API ,其访问方式类似 RPC ,直接调用相应的 API 完成业务操作,仍然需要编写相应的 callback 函数处理 Server 返回的 Response 结果。 在 AjaxProDemo.aspx.cs 中,我们通过在方法头部添加 [AjaxPro.AjaxMethod] 标注,在 Page_Load 中将类以 AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxProDemo)) 的形式予以注册, 这样就可以在 Client 直接调用。 Atlas 则是基于组件的应用方式,其允许使用拖拉的方式在 IDE 的设计视图中快速创建包含 Ajax 功能的组件,并且能够最大程度的利用 .NET 本身提供的 DataGrid 、 Button 等 UI 控件。这些组件提供了快速开发 Ajax 应用的另一捷径,开发过程不需要编写 callback 函数。 就目前而言, Atlas 能够利用最多的是 UpdatePanel 控件,通过其实现页面的无刷新或者部分刷新。

2 Ajax 框架性能及开发效率对比

A 、数据流量 Demo 中的四个 Sample 都实现了针对 Product 的简单 CRUD 功能。这里我们使用 Fiddler HTTP Debugger 来测试整个操作过程中 Client 和 Server 交互的数据量。 加载 Product List
请求 URL 数据流量 说明
Prototype
PrototypeServerResponse.aspx ?action=listProduct Request Count:      1 Bytes Sent:     380 Bytes Received: 2,150 获取 Product 列表,以 JSON 的格式返回,客户端使用 Javascript 脚本处理呈现。
Ajax.NET Pro ( Second
ajaxpro/AjaxProDemoSecond, App_Web_qgwv3twq.ashx Request Count:      1 Bytes Sent:     493 Bytes Received: 1,392 获取 Product 列表,以 HTML 的格式返回,客户端直接呈现。
Atlas
AtlasDemo.aspx Request Count:      1 Bytes Sent:     827 Bytes Received: 6,391 获取 Product 列表, Server 完成 DataGrid 数据源绑定呈现。
删除 Product
请求 数据流量 说明
Prototype
PrototypeServerResponse.aspx ?action=deleteProduct&productId=1 Request Count:      1 Bytes Sent:     446 Bytes Received: 1,891 传送 ProductId ,完成删除操作,并获取 Product 列表到 Client 端呈现。
Ajax.NET Pro ( Second
ajaxpro/AjaxProDemoSecond, App_Web_qgwv3twq.ashx Request Count:      1 Bytes Sent:     504 Bytes Received: 1,300 调用远程 RPC 接口,完成删除操作,并获取 Product 列表的 HTML 在 Client 端呈现。
Atlas
AtlasDemo.aspx Request Count:      1 Bytes Sent:     2,287 Bytes Received: 5,913 触发 Server 端的 Action 事件,完成删除操作,需要 Postback 整个页面。
获取 Product Info
请求 数据流量 说明
Prototype
PrototypeServerResponse.aspx ?action=getProduct&productId=8 Request Count:      1 Bytes Sent:     443 Bytes Received: 403 传送 ProductId ,获取 JSON 格式的 Product 信息, Client 端完成解析并呈现。
Ajax.NET Pro ( Second
ajaxpro/AjaxProDemoSecond, App_Web_qgwv3twq.ashx Request Count:      1 Bytes Sent:     506 Bytes Received: 284 调用 RPC 接口,获取 Text 格式的 Product 信息, Client 端完成解析并呈现。
Altas
AtlasDemo.aspx Request Count:      1 Bytes Sent:     2,185 Bytes Received: 6,275 触发 Server 端的 Action 事件,获取 Product 信息,需要 Postback 整个页面。
编辑 Product
请求 数据流量 说明
Prototype
PrototypeServerResponse.aspx ?action=updateProduct&productId=8 &productName=Sony&manufacturer=China Request Count:      1 Bytes Sent:     482 Bytes Received: 1,877 传送 ProductId 等参数,完成保存操作,并获取 Product 列表。
Ajax.NET Pro ( Second
ajaxpro/AjaxProDemoSecond, App_Web_qgwv3twq.ashx Request Count:      1 Bytes Sent:     549 Bytes Received: 1,284 调用远程 PPC 接口,完成保存操作,并获取 HTML 格式的 Product 列表。
Atlas
AtlasDemo.aspx Request Count:      1 Bytes Sent:     2,218 Bytes Received: 5,913 触发 Server 端的 Action 事件,完成保存操作,需要 Postback 整个页面。
增加 Product
请求 数据流量 说明
Prototype
PrototypeServerResponse.aspx ?action=addProduct&productName=Sony &manufacturer=China Request Count:      1 Bytes Sent:     467 Bytes Received: 2,050 传送 ProductName 等参数,完成增加操作,并获取 JSON 格式的 Product 列表。
Ajax.NET Pro
ajaxpro/AjaxProDemoSecond, App_Web_qgwv3twq.ashx Request Count:      1 Bytes Sent:     529 Bytes Received: 1,364 调用远程 RPC 接口,完成增加操作,并获取 HTML 格式的 Product 列表。
Atlas
AtlasDemo.aspx Request Count:      1 Bytes Sent:     2,249 Bytes Received: 6,533 触发 Server 端的 Action 事件,完成增加操作,需要 Postback 整个页面。
结论: 从上述对比表中可以看到, Atlas 在实现无刷新的显示过程中,还是需要 Postback 整个页面,只是这个过程是以异步方式进行处理的;当 Server 端完成响应后, Atlas 客户端根据页面的时候完成 partial-page 的更新。所以对于任何局部页面的操作,页面的 Postback 还是需要的。如果页面的数据量特别大, Atlas 将会导致效率的降低。 Prototype 和 Ajax.NET Pro 的数据量差别不大。 B 、开发效率 Atlas 紧密的和 .NET 的控件结合在一起。如果使用 Atlas ,则可以最大程度的复用 .NET 的控件,比如数据显示控件。 使用 Prototype ,需要在 Javascript 代码中提交 Request 请求到 Server ,并且编写相应的 callback 函数完成 Response 结果的解析和呈现。 使用 Ajax.NET Pro ,可以直接调用 Server 的类的方法(远程 RPC ),不过还是需要编写相应的 callback 函数完成 Response 结果的解析和呈现。 C 、 Server 端返回的数据格式 Ajax.NET Pro 中提供了序列化成 JSON 格式的接口和方法。 Server 端返回的数据格式,可以是简单的 Text ,也可以是 XML 文档,或者通过 Ajax.NET Pro 序列化成 JSON 格式。

三 使用Ajax需要注意的问题

暂缓。

四 参考材料

Micorsoft Fiddler HTTP Debugger : http://www.fiddlertool.com/fiddler/ Prototype : http://prototype.conio.net/ Ajax.NET Pro : http://www.ajaxpro.info/ Atlas Beter 2 : http://ajax.asp.net/default.aspx?tabid=47

点击这里下载Demo源码
点击这里下载Demo Web Site 

热心网友 时间:2022-04-27 20:48

vs2005是2.0 vs2008是3.5 还是用最新的吧。ajax框架在安装vs的时候就带一个的。如果要用外部的框架,我建议你用jquery,你到http://bbs.jquery.org.cn/下吧。这是中文社区,http://jquery.com/这是主页,自己选一个
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何在手机百度上删除对话记录? 结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? 黑龙江债权转让合同纠纷该怎样取证 安徽债权转让合同纠纷应该怎么样取证 电工证复审在网上可以查吗 请问 罗马仕的充电宝25000毫安和20000毫安的,哪个好,哪个实用?求解答 关于asp.net 2.0 ajax 急求制衣厂计件工资计算表格 皮革甲醛含量的测定方法 科莱恩膨润土江苏有限公司怎么样? 海尔冰箱修理费贵吗 冰箱换过滤器要多少钱我家的海尔冰箱白马王子据维修人员说换了过滤器,收费320元,确实要这么多 准备近期从成都自驾到西昌泸沽湖大理一线,请问这个季节风景如何?路况如何?需要注意些什么?有无详细路 万能的百度,谁知道是哪里的风景,我也想去!听说是四川的,但是不知道具体地址! 准备去泸沽湖,但是用搜狗手机地图在电脑上和手机上搜索出来的行驶时间完全不一样。电脑上只要12小时, 工资表中的公式 工资表中的公式怎样用?急!谢谢 PPT2013会根据幻灯片页面大小自动调整插入图片的尺寸大小,利用什么功能可以将? 髀关的名称释义 怎样找髀关穴位 碧管穴位在啥地方? 二手冰箱需要注意什么 《饿狼老公宠太深》txt下载在线阅读全文,求百度网盘云资源 苹果手机如何双开? 空调如何拆装?需要注意什么? 拆卸空调室内机要不关制冷阀门? 微信如何发文件夹 小米路由器 Pro是不是可以自己买块硬盘加上 小米路由器Pro到底支不支持自己安装内置硬盘 关于asp.net ajax环境 您好 请问下天职(北京)国际工程项目管理有限公司 造价员的待遇怎么样啊 月薪多少 山东的,谢谢哈 2012届财经类毕业生,准备转正!天职国际事务所工资是基本工资2100+什么的(具体不清楚)!认真算了下, 利亚纳 怎么样 北京天职国际会计师事务所实力如何?工作待遇如何? 有利亚纳正时记号图片吗? 天职国际会计师事务所云南分所好还是云南永盛事务所好?哪家待遇要高点 做审计助理 铃木利亚纳a6与利亚纳外形区别 天职国际会计师事务所部门主任有没有额外工资待遇 14年利亚纳a 6 图片里红圈里的指示灯什么意思 利亚纳正时记号图片 众华会计师事务所和天职国际事务所哪个好 08年利亚纳多少钱 利亚纳a6发动机号打在那里 010361基金跌到百分之四十了,该怎么处理?