新疆软件开发

本站首页 软件开发 成功案例 公司新闻 公司简介 客服中心 软件技术 网站建设
  您现在的位置: 新疆二域软件开发公司 >> 开发语言 >> 文章正文

优化Ajax 为网站减负

最近主要帮一个团队测试和优化项目,可能是由于项目的参与大部分都是新手,对ajax不是很熟,而造成ajax控件滥用,本文主要总结我们最近遇到的一些问题,和大家共同探讨,希望不足支出,欢迎大家指出.也希望开发经验丰富的前辈多多指导.

  以下是我根据遇到的问题总结出来的两点心得:

1.     updatepanle 不同情况的两种使用方法  第一,直接用updatepanle的<Triggers></Triggers>属性直接设置页面的相关控件的事件,该方法使用于简单使用updatepanle 或在同一个页面的同一个tab页。    第二,当在同一个页面存在多个tab页,并且不同的tab页的事件有所关联的时候,一般用在后台代码注册的方法比较适用。由于放在一个tab页的updatepanle可能无法识别或找到另一个tab页控件的触发事件,很容易导致出错,原因可能是你选的tab控件的类型所导致,我遇到过使用第三方的tab控件可以,但是使用微软或其他的第三方的tab控件却不行,虽然后者以后可能会解决这个问题,但为了你的程序能正常运行,使用代码注册不失为一个明智的选择。   比如你设计的一个页面有多个tab页,并且一个tab页里的某个控件的某个事件要触发另一个tab页的异步更新事件,那么最好用代码注册updatepanle的更新事件。  具体实现代码如下,也很简单:  首先在Page_Load向ScriptManager1注册异步更新的触发控件        ScriptManager1.RegisterAsyncPostBackControl(btnAdd);    然后再btnAdd的某个触发事件里调用要更新的方法,  最后该事件执行后,调用更新区域的updatepanle执行update()方法即可。 2.     尽量减少在同一个页面(或tab页)里使用多个updatepanle控件Upatepanle 可以减轻页面和服务器的通信负担,但滥用反而会增加页面和服务器的通信负担,同一个页面适用过多的updatepanle将导致出现多次的往通信,比如一个事件源触发多个更新事件。一般情况下,在同一页面的同一个tab页或table里只需要使用一个updatepanle就够了,即使是不需要更新的控件也可以放在同一个updatepanle里,和需要更新的控件放在一起,只要不触发它的事件即可或者让其AutoPostBack为false即可。自然如果由于业务的需要,特殊情况也要特殊对待。所以如果不是特别的业务需要,尽量让多个需要异步更新的控件放在同一个updatepanle里,统一异步更新,减少页面往返的通信次数。而至于统一异步更新,业务外观层(也就是页面层)可以借助table来解决,业务代码层(对应的页面后台代码)可以根据业务需求进行优化。

作者:ThinkCod… | 文章来源:博客园 | 更新时间:2007-11-2 16:25:49

  • 上一篇文章:

  • 下一篇文章:

  • 相关文章:
    软件开发中项目经理有那些职责
    “七分选型,三分软件”的ERP法则
    C++函数对象count_if
    语法C# 问关键字之:base、this
    java反编译工具大盘点
    JAVA的Spring框架概述
    使用Ajax时Java对象的序列化
    .Net下的分布式缓存
    复制SQL 数据库时的问题
    认识Java中native方法
    软件技术
    · 开发语言
    · Java技术
    · .Net技术
    · 数据库开发
    最新文章  
    ·搜集整理的asp.net的验证方
    ·各种FOR循环结构的整理
    ·软件项目开发中应该考虑那
    ·搜集整理的javascript sel
    ·软件开发中项目经理有那些
    ·学习如何在Lambda表达式进
    ·C++基础知识:结构体数据的
    ·C#实现短信发送程序的例子
    ·sun最近修补了一部分java的
    ·rss定制的另外一种实现方式
    ·delphi实现利用arp欺骗来实
    ·基础学习:基于WF的流程框
    ·网络编程中怎样得知一次数
    ·如何逆序输出单链表?
    ·软件开发过程中的性能设计
    关于我们 | 软件开发 | 下载试用 | 客服中心 | 联系我们 | 友情链接 | 网站地图 | 新疆电子地图 | RSS订阅
    版权所有 © 2016 新疆二域软件开发网 www.k8w.net All Rights Reserved 新ICP备14003571号
    新疆软件开发总机:0991-4842803、4811639.
    客服QQ:596589785 ;地址:新疆乌鲁木齐北京中路华联大厦A-5C 邮编:830000