我在StackOverFlow上看到了几个类似的问题,但是 none 在这些问题中总结了以下标准。
jquery.ajax与UpdatePanel有什么好处(比如 - viewstate,speed,size)?
答案 0 :(得分:5)
IMO,将jquery ajax与更新面板进行比较有点像比较苹果与橙子。
UpdatePanel非常易于使用;你真的不需要编写任何重要的代码来实现AJAX,与服务器控件模型无缝协作。这是通过发出异步发布请求来实现的 - 因此所有表单元素都会被发布,包括视图状态。在服务器端,整个控制树被加载,页面遵循正常的生命周期,直到渲染时,只有来自更新面板的html(以及视图状态)被发送到客户端。因此,您有大量请求,更多服务器负载和大响应大小。
替代方法是进行异步服务器调用,其中请求将仅携带服务器调用所需的数据。服务器将响应所需的数据。通常,可以使用JSON将数据传输到服务器或从服务器传输数据,从而减少请求和响应大小。在服务器端,通常使用脚本服务或页面方法来执行特定任务(而不是遵循页面生命周期),从而减少服务器负载。
现在,可以使用ScriptManager生成的代理或使用jquery AJAX调用脚本服务/页面方法。我更喜欢使用jquery来避免ASP.NET AJAX生成的更大代理代码。
答案 1 :(得分:3)
对我来说,UpdatePanel的最大缺点是生成的HTML输出。试试吧,看看你的HTML,我认为它不是那么可读和小。
在另一个网站上,整个Microsoft Ajax Lib已经停止使用。
答案 2 :(得分:2)