Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JQuery和ASP.NETAjax在MVC中的差异_Jquery_Asp.net Mvc_Asp.net Ajax - Fatal编程技术网

JQuery和ASP.NETAjax在MVC中的差异

JQuery和ASP.NETAjax在MVC中的差异,jquery,asp.net-mvc,asp.net-ajax,Jquery,Asp.net Mvc,Asp.net Ajax,看看新的ASP.NET MVC框架,它附带了ASP.NET AJAX和JQuery的javascript文件 有人能解释一下ASP.NETAjax给了我什么,而JQuery没有吗 我是否需要同时使用这两种方法?您能否举例说明我将/不需要同时使用这两种方法 我已经在很多非ASP.NET项目(PHP和原型网站)上使用过JQuery,并且非常高兴地使用过JQuery Ajax,但是我不确定ASP.NET最好使用什么 谢谢你的时间 Sniffer我最近一直在编写没有Microsoft AJAX的ASP.

看看新的ASP.NET MVC框架,它附带了ASP.NET AJAX和JQuery的javascript文件

有人能解释一下ASP.NETAjax给了我什么,而JQuery没有吗

我是否需要同时使用这两种方法?您能否举例说明我将/不需要同时使用这两种方法

我已经在很多非ASP.NET项目(PHP和原型网站)上使用过JQuery,并且非常高兴地使用过JQuery Ajax,但是我不确定ASP.NET最好使用什么

谢谢你的时间
Sniffer

我最近一直在编写没有Microsoft AJAX的ASP.NET MVC页面。结论?您需要进行更多的连接以使其工作,特别是在服务器端通信(提示:使用JSON.NET,而不是内置的东西),但它要短得多,可读性也更高。我不会再使用MicrosoftAjax了

ASP.NET AJAX为您提供了:

  • 提供AJAX功能的一组ASP.NET控件。使用起来很痛苦,写起来更痛苦。jQuery扩展更简洁,但对于ASP.NET程序员来说,学习曲线更陡峭
  • 能够自动生成执行AJAX调用的类。这真的很酷,但是没有它你也可以生活
  • 名称空间和事件模型,如果编程jQuery样式,则不需要它
  • 能够部分呈现页面。只有在不使用MVC的情况下才有用,即使这样也很少建议

  • 结论:使用jQuery,删除Microsoft AJAX。

    然后是不同的意见(!),但感谢您的反馈

    作为信息,我找到了这个线索,它更清楚地回答了我的问题

    我想我将只使用jQuery,以获得舒适度、更易于阅读的代码、较小的文件大小等等,然后看看我是如何做到的

    再次感谢
    Sniffer

    我使用JQuery检索Json数据,使用Microsoft AJAX发布表单。您可以使用JQuery同时执行这两种操作,但我自己并不喜欢序列化表单。归根结底,MicrosoftAjax是相当不错的——如果你需要自己编写更少的JavaScript代码,那么你需要维护的代码就更少了

    因此,为了回答您的问题,Microsoft AJAX并没有真正添加JQuery所没有的任何内容。它只允许您使用帮助程序,这些帮助程序被翻译成与您可以使用JQuery编写的JavaScript代码几乎相同的代码。就像我说的-你自己写的JavaScript代码越少,你需要维护的代码就越少


    没有真正的例子说明您应该或不应该使用其中一种,这取决于个人喜好。

    Asp.Net AJAX是为Asp.Net WebForms而设计的,而不是MVC。它被设计用来做jQuery已经做过的许多事情。在微软同意将jQuery与Asp.NETMVC捆绑在一起是个好主意之前,Asp.NETAjax是他们的全部

    Asp.NETAjax试图在客户端浏览器中复制服务器端环境的一部分——您可以在类似MS的JS命名空间中看到这一点。它是为WebForms设计的,当时一切都基于post-back模型

    MVC范式试图通过诚实地了解HTTP的工作方式来分离和简化web开发的各个方面。由于Asp.NETAJAX与WebForms的紧密配合,它实际上并不适合这个领域。正如您可以让WebForms控件在MVC中工作一样(因为它仍然构建在ASP.NET核心上),您也可以让ASP.NET AJAX在MVC中工作,但真正的问题是:

    jQuery和MVC(根据设计和定义)是相互关联的


    (希望我的回答不是太主观:D)

    还有一条支持jQuery的线索:虽然这个问题有点老,但这可能是相关的。“Microsoft正在大力支持jQuery,并使其成为使用Microsoft技术开发客户端Ajax应用程序的主要方式。”