ASP.NET Ajax控件套件与JQuery

Kot*_*tan 5 asp.net ajax jquery

在过去的两年中,JQuery变得越来越流行.所以你认为现在是时候用Ajax在ASP.NET项目中选择JQuery到ASP.NET Ajax了吗?ASP.NET Ajax控件套件是否是ASP.NET世界的未来?

Dav*_*ard 3

简短回答:

如果您的页面/站点当前不依赖于 UpdatePanel 或 ACT 控件,那么一定要使用 jQuery 和 jQuery UI 来进行任何新工作。现在这甚至是微软自己的建议。

长答案:

在处理这个主题时,清楚术语很重要。

ASP.NET AJAX 既是客户端的一部分,也是服务器端的一部分。System.Web.Extensions 来自 Atlas,最终集成到 ASP.NET 3.5 中。即使您不使用 ScriptManager 或 MicrosoftAjax.js,ASP.NET AJAX 的服务器端部分对于创建基于 JSON 的服务器端端点仍然非常有用(并且这些端点可以直接从 jQuery 调用,无需 ScriptManager )。

jQuery 和 MicrosoftAjax.js 有点相似,但两者都做了对方不做的事情。严格来说,说它们是相互竞争并不准确。他们有不同的目标。如果您的应用程序有任何 UpdatePanel,您别无选择,只能包含 MicrosoftAjax.js(它会随 ScriptManager 自动引入)。不过,jQuery 和 MicrosoftAjax.js 确实可以很好地协同工作,因此如果需要,您仍然可以将 jQuery 更强大的选择器、遍历和动画与 UpdatePanel 结合使用。

AJAX Control Toolkit (ACT) 是一个不同的项目,完全独立于 ASP.NET AJAX。它最直接地与 jQuery UI 进行比较,而不是 jQuery 核心本身。展望未来,我认为我们将看到大多数仅客户端 AJAX Control Toolkit 控件被重构为 jQuery 插件(去年年底已经发生了这种情况,但它们已被撤回)。

最终,如果两者都存在等效的解决方案,最好选择 jQuery 或 jQuery UI,而不是 MicrosoftAjax.js 或 ACT。但是,如果您通过 UpdatePanels 或其他现有代码与 MicrosoftAjax.js 绑定在一起,请不要害怕将 jQuery 与其混合并慢慢过渡到 jQuery。他们合作得很好。