UpdatePanel与"传统"AJAX有何不同?

leo*_*ora 3 asp.net ajax updatepanel

我的朋友告诉我,因为我只在我的asp.net网站上使用更新面板,所以我真的没有使用直接的AJAX功能.他在说什么?

Jas*_*son 8

严格的AJAX意味着使用异步Javascript(使用JS XmlHttpRequest对象)和XML(或JSON).这意味着要对服务器或其他服务进行非常轻量级的调用,获取结果,并在客户端以某种方式处理它们.双方(请求和响应处理)都需要编写Javascript.

ASP.NET UpdatePanels执行此操作,但"隐藏"您的所有详细信息.也就是说,他们的数据传输有效负载"看起来"像标准形式的POST,并且返回的数据实际上是一个HTML块,实际上插入/替换到当前页面.

这使得服务器上的呼叫"更重"(因为必须完成整个页面生命周期)和带宽使用.诸如ASP.NET MVC之类的新技术不需要/使用UpdatePanels并且可以使用轻量级JSON服务来返回数据,但是您必须在客户端编写Javascript以"处理它"(以某种方式将其绑定到UI).