AJAX和Client Side MVC在工作方式上有什么区别?

时间:2014-08-20 15:39:06

标签: ajax asp.net-mvc client-server client-side

据我所知,客户端MVC是在客户端完成大部分数据处理的时候。 AJAX是指网页的一部分更新而不是全部。这就是我所知道的。

我在网上找到的所有解释对我都没有意义(因为我是初学者)。有人会介意解释吗?为什么两者之间存在区别,它们看起来是一回事。

2 个答案:

答案 0 :(得分:0)

他们不一样。 客户端MVC意味着MVC框架完全在客户端构建。因此服务器只向应用程序提供数据。数据与模型的绑定发生在客户端。

实现这一原则的框架的一个例子是AngularJs另一个是Ember。

这是从中提取的 What is client side MVC and how is it implemented in JavaScript?

Ajax并不是一个框架。它是微软早期发明的,只是简单地对服务器进行异步调用,无需刷新页面即可获取数据。 因此,如果您正在开发Greenfield项目,并希望拥有一个富客户端App或SPA(单页应用程序)。你不需要Asp.net MVC。 Angular JS就足够了。 如果您正在开展棕地项目,您可以使用Ajax使您的应用程序更加客户端友好。此外,您可以通过客户端framewrok(例如angularJs)来增强它。它取决于你。

以下是使用带有angularJS的Asp.net MVC应用程序的示例: http://www.dotnetcurry.com/showarticle.aspx?ID=1000

答案 1 :(得分:0)

看起来你已经部分回答了你的问题。 MVC是一种用于实现用户界面的软件架构模式。因此,这基本上用作一种模式,允许您遵循框架并使其易于理解。在客户端使用AJAX(异步 Javascript XML )来创建异步Web应用程序。使用此功能,您可以在后台进行调用并从客户端获取或发送数据到服务器端。这有助于使用户的用户界面体验更好。

因此,例如,假设您使用用户名和密码创建登录页面。在用户点击“登录”后,让我们说实际登录用户并使用他们的凭据需要2分钟(我知道,这是一个极端的情况)。 如果您使用经典的 MVC ,则用户可能无法在这2分钟内执行任何操作(因为您正在客户端执行所有数据处理/数据绑定)。但是如果您使用 AJAX ,您可以在后台进行所有数据处理,在这2分钟内,您可以让用户玩游戏/做其他事情。 AJAX 主要用于您希望从服务器获取某些数据而不刷新视图的情况(请记住,异步)。