ASP.NET MVC中的jQuery与MicrosoftAjax

在什么情况下你会在ASP.NET MVC应用程序中使用MicrosoftAjax而不是jQuery?

根据Scott Cate在这个与Scott Cate一起使用的面向对象的AJAX播客中, MicrosoftAjax适用于向服务器发送数据和从服务器检索数据。 jQuery一旦到达客户端就可以通过DOM操作数据。 然而,使用jQuery的简单表单插件,您可以非常轻松地使用jQuery发送和检索数据。 通常只有一行代码。

所以我想知道ASP.NET MVC中的MicrosoftAjax和jQuery有什么区别?

使用jQuery – 即使微软已经看到了他们的方式的错误。 Visual Studio的下一个版本将包含jQuery并使用intellisense支持它。 关于这个简单的插件你也完全正确。 MS Ajax虽然有时更容易使用,但速度慢且臃肿。

我试图并排使用或多或少。

内置的ajax助手工作正常。

但是jquery的占用空间更小,使用更透明。

当使用ajax助手时,我会立即获得结果但却无法了解幕后发生的事情

除此之外如果你必须桥接到jquery以扩展你的ajax场景,你也可以从那里开始。

jQuery重量更轻,更易于集成到标准的javascript函数中,并且具有出色的社区支持。 MS Ajax很重,但我怀疑他们正在重写所有AJAX。

确保使用jQuery.ajax函数而不是jQuery.get – 它更详细,但对于error handling至关重要。

不要因为jQuery.get()更容易而吝啬error handling代码。 它可能适用于您的测试,但是对于它不能工作的许多情况,您需要某种error handling。

我真的不确定为什么得到没有error handling,但这里是来自jQuery文档的get:

这是一种简单的方法,可以将简单的GET请求发送到服务器,而无需使用更复杂的$ .ajax函数。 它允许指定将在请求完成时执行的单个回调函数(并且仅当响应具有成功的响应代码时)。 如果您需要同时具有错误和成功回调,则可能需要使用$ .ajax。