c# – MS UpdatePanels真的不是AJAX吗?

我一直听说服务器端的ASP .NET AJAX控件(比如UpdatePanels)虽然看起来不是真正的AJAX,但因为渲染并不完全在客户端.我试图更清楚地理解这一点.有人可以详细说明吗?

谢谢…

解决方法

UpdatePanels在AJAX循环中很早就出现了,它们很重(它们可以发出大约100-300k的 JavaScript).在幕后,UpdatePanels通过JavaScript XMLHttpRequest将整个页面发布回服务器.新页面使用正常页面生命周期生成,就像回发一样,但只有UpdatePanel内部的部分(以及更新ViewState等所需的部分)才会发送回客户端.从那里插入标记而没有可见的闪存或页面状态的中断.

大多数竞争的AJAX工具都倾向于超轻量级的实现,这些实现允许您通过Javascript发布或生成一小部分HTML,我想这是今天的主导方向,尤其是在ASP.NET世界之外.

通过网络发送的数据总量的差异很大 – 请参阅下面的链接.在低流量情况下,它可能没有什么区别,但在像StackOverflow这样的网站的情况下,它肯定会显示在带宽账单上.

总而言之,我认为UpdatePanels实际上不是AJAX是不公平的,因为他们通过异步JavaScript发布HTML – 只是在顶部有一个巨大的,通常很麻烦的框架. UpdatePanels有时会得到糟糕的说唱,但它们提供了非常简单的开发者体验.我经常发现它们在低流量情况下很有用.

更新:Here是一篇文章(旧的但仍然有效),用于检查与服务器之间的有效负载UpdatePanel.它还涉及Page Methods,它是一种基于Web Service的轻量级替代UpdatePanels.这是Microsoft AJAX经常被忽视的部分.

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...