2011-08-02 53 views

回答

5

IMO,比较jquery的Ajax更新面板是有点像比较苹果VS桔子。

UpdatePanel非常易于使用;您实际上不必编写任何重要的代码来实现AJAX,可以与服务器控件模型无缝协作。这是通过发布异步发布请求来实现的 - 所有表单元素都会发布,包括视图状态。在服务器端,整个控制树被加载并且页面遵循正常的生命周期,直到只有来自更新面板的html被发送(与视图状态一起)到客户端的呈现。所以你有大的请求大小,更多的服务器负载和大的响应大小。

另一种方法是进行异步服务器调用,其中请求只携带服务器调用所需的数据。服务器将以所需的数据进行响应。通常,可以使用JSON将数据传输到服务器或从服务器传输数据,从而减少请求和响应大小。在服务器端,通常使用脚本服务或页面方法,这将执行特定的任务(而不是遵循页面生命周期)来减少服务器负载。

现在,可以使用ScriptManager生成的代理或使用jQuery AJAX调用脚本服务/页面方法。我更喜欢jQuery,以避免由ASP.NET AJAX生成的更大尺寸的代理代码。

3

对我来说,UpdatePanel的最大缺点是生成的HTML输出。只要试一试,看看你的HTML,我认为它不够可读和小。

在另一个站点上,整个Microsoft Ajax Lib已经停止。