改变了服务器输出html方式,仅仅输出个别html标签和片断javascript代码,而不是整个页面了。因此缺点就是更加面向对象地组织web应用了。

解决方案 »

  1.   

    我对肥客户端不看好。我觉得asp.net ajax会是过眼云烟。如果我们真的需要那么强大的客户端,就不必死守b/s模式了。今天的asp.net ajax程序很难达到asp.net程序的水平,操作中随时都有许多对象需要交给服务器处理,今天asp.net ajax之所以比追捧很大程度上是因为它没有正式发布就吹得很厉害。我觉得与其建立asp.net ajax只服务自己一家的开发平台,不如把html协议更丰富和简练造福更多web服务器开发平台。
      

  2.   

    我觉得vista流行起来恐怕至少得3年,即使流行起来,原来得web网站也不会被淘汰。目前得客户端最大的局限在于显示能力不够强大,各个浏览器的兼容性还是不太好,这个有待于行业标准的发布。总体来说,AJAX的出现让我们为之一振,AJAX绝对不是过眼烟云,大家看看,现在哪个网站没有AJAX,如果说AJAX小大小闹,那么看看google mail,google talk,google map!
      

  3.   

    AJAX的缺点:
    1  浏览器对js脚本兼容性不好
    2  增加第一次传输的网络负载
    3  可能会暴露服务器端口
      

  4.   

    AJAX另一个主要缺点是,开发成本较高。
    降很多时间浪费在界面上。
    这对于初级应用来说,实在是得不偿失。我们一般开发的应用没有必要和Google他们搞得那些玩意相比。
      

  5.   

    要仔细,我说的是“asp.net ajax会是过眼云烟”!
      

  6.   

    ajax肯定会被替代,因为不够傻瓜.
      

  7.   

    我也谈一点体会。前几日将一个asp.net20的web程序添加ms ajax支持后,发现自己做的一个服务器控件不能用了。看一下页面源码才明白,ajax将异步取回的页面内容以java脚本更改当前页面元素的内容,而象同步提交那样页面元素直接改变。而我的服务器控件内部使用了registerclientscriptblock定义了客户端脚本输出,在异步取回时这些脚本不会被写在页面文本中,因此出现问题。后来将脚本分离到专门一个.js文件中并包含,才算能凑合着用。
    同样,如果你在page的服务器端代码中使用了registerclientscript,那么异步提交后这些代码也不会出现在页面文本中。
    我想到的一个解决方案就是将要用的javascript代码作为.dll的资源编译,并且在<scriptmanager>中注册;但感觉也不是太好,无论如何原来的服务器控件都不能独立运作,必须依靠外界(<scriptmanager>)支持才成。
      

  8.   

    关于最基本最简单的Ajax方法(但是其实不包括X,也没有几个框架把X这个字母当作真的戒律),我在另一个帖子有一个代码例子:  http://community.csdn.net/Expert/topic/5297/5297764.xml?temp=.1042292asp.net ajax如果只是为了实现ajax基本功能,就用不着这么多年了,10天就可以推出最终产品了。
      

  9.   

    既然说到这个,那么就把asp.net ajax所要解决的简单想当然的那些ajax框架的一个致命缺点说一下:ajax的出现使得web响应变得干净利索,结果就是带来程序员希望更多、更细地使用ajax。像google map那种几乎不算是什么现代ajax的应用,它仅需要下载很少的资料,很少的交互,它只是先发制人启动了人们对ajax的兴趣而已。接下来ajax如果仅仅当作一个“乘法计算器”之类的无状态web服务就显得很苍白了,开发方法需要和ui组件的开发结合起来,但是现在没有一个web开发平台是基于jaavscript来开发组件的,asp.net中可以开发服务器控件并且可以在vs中拖拉、设置属性等但是毕竟都是服务器端的。这是低级ajax缺点之一。例如当用户在界面上输入“爱好”的时候,界面上可能有20个散布在页面各个角落的控件需要局部刷新,UpdatePanel显然是一种非常蹩脚的设计(仅仅为了更方便地与asp.net的postback处理流程相结合)。一个动作的后台处理刷新前台多个控件,而具体刷新哪些控件应该是动作在运行时决定,而不是设计静态界面时决定的。这是低级ajax缺点之二。服务器端组件以现在asp.net的处理机制造成的在服务器端不断重建大量控件、然后恢复状态、触发服务器端事件、输出相应的html等,结果每一个ajax交互其实都相对来说“很慢”,如果页面根本不需要重建(就像很多不懂asp.net的人已开始想象的那样)那么效率可以大幅提高几百倍,或者干脆放到客户端去处理。这是低级ajax缺点之三。
      

  10.   

    然而提出问题未必就能解决问题。asp.net ajax比较全面地面向真正的ajax开发需求,这是好事。不过我怀疑asp.net ajax的基本设计思路,这是另外一回事。我对它的怀疑就不细说了,主要一点是我觉得将服务器端的功能(结合主机CPU处理能力、内存配置、外存升级等新形势)进一步提升,web应用还是应该立足于瘦客户端应用,立足于那些几乎每一个操作步骤都必须到远程服务器去往返一次的应用,而将肥客户端的应用直接让位给类似于从精简.net compact framework之类可通过internet自动部署的smart client框架。
      

  11.   

    我的上面的“缺点一”的意思是,很多ui组件开发的高级程序员整天开始与乱麻一样的javascript代码作战,是不可能喜欢这种新的开发方法的。
      

  12.   

    拒绝使用ajax同意sp1234的看法b/s就是要瘦客户端
      

  13.   

    用asp.net ajax时会出现如果页面中有特殊符号,分页功能就会有问题,而去掉ajax则正常。
      

  14.   

    哈哈,我已在使用VISTA系统啦,今天还使用VS2005在各系统中安装,测试了一下性能哦!不过言归正传,我没有使用过AJAX,不知道好不好,但是我就是不喜欢
      

  15.   

    虽然我对这些不是很了解,但我觉得 肥客户端 还是比C/S模式要好。现在的计算机的配置越来越高,这么强的计算能力不用也是浪费。
    它取代B/S模式的最大原因我觉得是部署和维护方便很多。
      

  16.   

    其实我觉得用Ajax适可而止就行了,必要的地方用一下,点到即止就OK了.
      

  17.   

    Ajax是好东东啊! 从 Google map上也可见其冰山一角了.
      

  18.   

    动态网页可视化开发平台
    http://www.fzhdkj.cn/WebFrame/CwmPage/Design.aspx?FC=test
      

  19.   

    其实就是一个客户端于服务器端通讯标准的明显Web方式 就是因为其易用性 通用性哈 才具有发展的前途 但是现在由于浏览器本身又多种多样使得在共同的标准下 具有一定的差异 相信以后会变化的 
    Adobe的那个什么东东 也是这样
      

  20.   

    > 我的上面的“缺点一”的意思是,很多ui组件开发的高级程序员整天开始与乱麻一样的javascript代码作战,是不可能喜欢这种新的开发方法的。找个好点库就可以了
      

  21.   

    asp.net ajax toolkit 是完全开源的,可以看源代码学习。虽然不很优雅,但是看起来微软确实是赚到了(ajax项目真的是有高人呀),使用起来相当简单。
      

  22.   

    我正在学习AJAX,感觉很好,但是我觉得
    一:所谓的无刷新,其实内部我估计是使用了JAVA,这我不太懂,这在客户端经常出现代码错误,导致有些功能不能使用
    二:现在的服务器配置和客户端以及网络速度,已够快的了,直接使用ASP.NET,制作网页,出的问题不是很大,在哪里都能显示,这样很好,没必要使用AJAX来修饰自己,界面也好修改,速度也快,拿个花灯在自己面前晃来晃去,倒不如直接使用ASP.NET
    三:开发效益简直不高,如果使用AJAX,编写大量的冗余的JAVA代码,经常在客户端出现错误提示,代码不简洁,倒不如直接使用ASP.NET服务器端相当简洁的代码完成项目!
      

  23.   

    AJAX的优点:不刷新
    AJAX的缺点:不刷新
      

  24.   

    优点是不刷新整个页面实现交互。
    最大的缺点是网络很不好的时候很容易导致浏览器无响应,我测试了好几个使用AJAX技术的网站。看看http://www.vrart.cn/网站的应用吧,首页的作品TABLE用了AJAX。我网络不好,把我浏览器弄没有响应10秒,这是个什么概念,简直难以忍受。这种没有必要的AJAX技术应用简直就是在炫耀技术。而并不是在给客户制造便利,我同意jamfchan 的看法,适可而止,要用的地方才用,google map就是很好的列子。不必要用的地方尽量不用或者少用。另外别老把AJAX当宝。
      

  25.   

    我认为ajax在很多应用时出现很多很难解决的问题,尽量少用。
    必要的时候还是可以用一下的。
      

  26.   

    对于很多很多难题,我使用silverlight来写。silverlight控件是可以放入asp.net页面的。实际上,我几乎已经不使用asp.net了,因为它太瘦。但是对于比较胖的客户端编程,我觉得单纯javascript编程相比任何RIA编程来说都太落后了。
      

  27.   

    sp1234的观点是否是认为asp.net ajax部分功能或者全部功能已经被silverlight所取代了?
      

  28.   

    一个页面中过多的ajax请求会导致服务器端负担
      

  29.   

    对ajax来说本人最不能忍受的是对搜索引擎的支持!其它的功能且不说,就这一点!客户让我把ajax实现的功能又改回传统方式上浪费我的感情和精力真是闹火!
      

  30.   

    ajax的好坏最终都是由市场决定,由用户决定。技术人员啊,就会拿自己当根葱。
    还说什么增加了客户端的负担呢,现在的客户端PC已经越来越便宜和强大了,不充分利用客户端才傻呢。
      

  31.   

    看了楼上的一些意见,个人感觉AJAX技术它至少帮助我们程序员们解决了一些很多麻烦,还有给客户提供了很多方便!应该是很不错的!