ASP.NET MVC 應用程序中 MS Ajax 與 jQuery 的優缺點?
現在 RC1 出來了,我需要一勞永逸地決定是使用 MS Ajax 庫還是只使用 jQuery 來處理 AJAX 請求。該應用程序是一個新應用程序。本質上,我決定的方式是我是否從 Microsoft 庫中獲得任何我不會從 jQuery獲得的**顯著好處。**我已經載入了 jQuery,我最關心的是文件大小的額外成本。
據我所知——唯一的好處確實是有類似的助手
Ajax.BeginForm,但也許這些在某些時候可以與 jQuery 一起使用?我的一位政府僱員朋友今天還告訴我,MS Ajax 庫中有很多錯誤 - 這讓我很擔心。隨著微軟現在正式與 jQuery 成為朋友,我不會太擔心他們將來會做任何事情來通過增強自己的庫來將 jQuery 拋在腦後。
我真的不太了解 MS Ajax 究竟為我做了什麼。有沒有一定的利弊。還是支持“更新面板”只是 90% 的膨脹?
我還發現非常有趣的是,ASP.NET MVC in Action書只是跳過了 MS Ajax 庫並直接跳到了 jQuery 中:
在本章中,讀者將了解 ajax 技術如何以比 Web 窗體更無縫的方式應用於 ASP.NET MVC。讀者將看到如何利用一個日益流行的輕量級 JavaScript 庫,稱為 jQuery。
(來自AJAX 的免費範例章節)
非常感謝聽到任何人關於他們與兩者合作的經歷,特別是在以下附加問題上:
- 在兩個庫之間轉換程式碼是否容易 - 假設相對簡單的 ajax 要求?
- 在任一庫中調試明顯更好或更快
- 有人知道 ASP.NET 4.0 的進展情況以及任何可能對 MVC 有益的 AJAX 庫計劃嗎?
- 簡而言之,除了發送請求並將響應粘貼在 DIV 中之外,MS AJAX 還能為 MVC 應用程序做什麼?
- 我如何做相當於
Ajax.BeginForm(...)和使用 jQuery ?- 你的交易殺手是什麼?
- 大多數人都在用什麼?
就個人而言,我會堅持使用 JQuery。MS AJAX 在大小方面是相當重量級的,你可以用 JQuery 做很多事情。至於轉換程式碼是否容易,這取決於您使用了多少 MS AJAX 東西。我認為從一個調試到另一個調試並沒有太大的區別。您將擁有一個更大的 JQuery 使用者社區,可以從中提取資源。
您可以(而且我確實)根據需要同時使用兩者。當我希望一個特定的表單對 JavaScript 不友好並且我在伺服器上生成內容時,我將通過 AjaxHelper 使用 MS AJAX。它在客戶端建構了我需要的一切來處理不支持 JavaScript 的瀏覽器。我只需要在控制器中檢測 AJAX/非 AJAX 並根據情況返回部分或完整視圖。如果我需要將 AJAX 用作外掛的一部分(比如
autocomplete),那麼我將使用 jQuery。關鍵是我使用最適合我(最容易實現)的工具。當然,我的大多數應用程序都在 Intranet 上執行,所以我不太關心下載的大小。