最近在了解atlas  看到篇不错的文章贴过来  申明 :不是本人所写  

Atlas UpdatePanel服务器控件使用技巧:

  1. 务必设定ScriptManager的EnablePartialRendering属性为true。有好多人向我抱怨说他们的UpdatePanel并不以AJAX的方式工作而还是引发普通的整页PostBack,原因就在于没有设定这个属性。
  2. 设定触发UpdatePanel的控件为服务器控件。因为无论ControlValueTrigger还是ControlEventTrigger,指定的属性/事件都是服务器端属性/事件,都只在服务器端属性变化或是服务器端发出事件时才能触发UpdatePanelPostBack
  3. 区别UpdatePanel的两种更新方式AlwaysConditional。请参考:http://dflying.cnblogs.com/archive/2006/03/25/358547.html。我们应该设定正确的更新方式以避免更新不必要更新的Panel,造成不必要的性能/网络开销。
  4. 不要使用UpdatePanel。如果你从头开始建立一个Atlas程序,仅仅使用UpdatePanel来实现AJAX可能并不是最好的选择。UpdatePanel仅仅简单的从头渲染所有的位于ContentTemplate内部的控件,在某些情况下可能非常低效,例如,对于一个包含了一个有相当多结点的TreeView控件的UpdatePanel来说,如果你只是想简单的添加一个新节点,使用UpdatePanel将会从后台取得整个TreeView并重新渲染,远不及仅存储后并把这个新的节点添加到TreeView中来得高效。在这些情况下,你最好考虑使用一些较高级的Atlas客户端控件。当然,这也加大了一些开发的难度。
  5. 在页面的InitComplete事件被引发前必须保证UpdatePanel已经被初始化。也就是说,不能将UpdatePanel放置于比如一个DataListHeaderTemplate中,因为HeaderTemplate中的内容是在Databinding时期才得到的,而这时页面的InitComplete事件早已经结束。
  6. 在UpdatePanel中不要使用Response.Write(); 。这会扰乱UpdatePanel的执行过程。
  7. Atlas的客户端脚本可以使用于任何的开发平台/语言中。例如ASP.NET 1.1,纯HTML甚至PHP,但是像UpdatePanel这样的服务器端控件只能用于ASP.NET 2.0页面中。Atlas的客户端脚本实际上就是一些经过组织的JavaScript文件,当然是与服务器端选用的技术无关的。但当你使用非ASP.NET 2.0环境时,需要手动加入对这些JavaScript文件的引用,因为你无法使用ASP.NET 2.0中的服务器端控件ScriptManager
  8. 小心在UpdatePanel中包含第三方JavaScript实现的组件。开发跨平台的JavaScript Framework是一件很艰巨的任务,在目前的Atlas实现中仍有很多兼容性的问题。让我们期待未来会更好或者干脆现在想办法自己解决吧。