MVC和AJAX概念是如何相关的?

Bea*_*red 4 ajax model-view-controller asp.net-mvc

经过十年的桌面开发,我目前正在深入研究Web开发,并且我正在努力掌握我正在学习的许多概念.我一直在阅读的两个最新概念是MVC(特别是ASP.NET MVC)和AJAX.我理解MVC是用于分离逻辑和数据的模式,而AJAX是用于创建异步和动态网页的各种Web技术的组合.

  1. 这两者有什么关系?
  2. 两者可以或应该一起使用吗?
  3. 如果是这样,你能举出一些简单的例子吗?

如果这些都是奇怪的问题我会道歉,我将苹果与橘子比较,请原谅我,因为我仍然是一个巨大的巨型菜鸟.

Pas*_*TIN 6

Ajax只是请求数据的方式:通常,使用Ajax,而不是请求完整的HTML网页,您只需要:

  • 页面的一部分(例如,您要刷新的屏幕的一部分的HTML代码,而不重新加载整个页面)
  • 或一些数据; 例如,使用JSON或XML作为数据交换格式

MVC描述了用于:

  • 访问数据并执行操作/计算/其中的任何内容(M)
  • 呈现它(V)
  • 通过Controller,确定应该使用哪个Model和View来提供您请求的数据.

当您使用Ajax请求时,您完全按照提供整页的方式执行操作:

  • 得到一个请求
  • 确定应该调用哪个模型和方法
  • 打电话给他们(也许他们会用数据库或其他任何东西做某事)
  • 将数据传递给View,它将呈现它

这两个区别是:

  • 在一种情况下,"View"呈现完整的HTML页面:在另一种情况下,只呈现其中的一部分或一些JSON/XML格式
  • 在一种情况下,请求通常在异步模式下完成

是否使用Ajax,您可以自由使用MVC ......或者不是!
如果您使用MVC进行非Ajax请求,那么,为什么不对Ajax请求也这样做呢?

对不起,我不会给任何代码的例子 - 我不是一个.NET开发人员,因此将无法帮助与(但概念是在其他语言一样;-))