2015-06-12 111 views
1

我已经探讨了ASP.net的Web API框架和MVC 4.我明白使用Web API只返回数据,那么在客户端,我们使用JavaScript的角度来看,AJAX来处理所有的行动通过HTTP动词。另一方面,MVC控制器可以返回数据并查看我们可以通过控制器中的[HttpPost]处理事件。ASP.net Web应用程序结构混乱

我看到一些人,他们做2个项目在一个解决方案:一个是网络API在MVC 4,另一个是MVC 4互联网应用。这是个好主意吗?我没有看到两种项目之间的关系。任何人都可以向我解释两个项目如何相互沟通,这种方式的优点和缺点是什么?

注:本解决方案,他/她仍然使用Httppost来处理事件,并使用MVC控制器返回视图与模型绑定。

回答

1

嗯,我想这将是一个务实的对话......

对于初学者来说,这似乎是在Asp.net的WebAPI和Asp.net MVC打算在Asp.Net V-接下来要对齐,所以会有一个基本控制器类,它将返回你所希望的数据类型(ActionResult,Json等)。

从近几年的经验来看,我认为趋势是有一个暴露数据的WebApi和一个只有JS代码的Web应用程序,没有C#代码,只需从浏览器调用Api就可以做什么它需要做的。

所以这样,我们基本上一个HUP保存到服务器(MVC服务器),我们可以直接调用来自浏览器的API。

但是有些人仍然会争论负载均衡,缩放,缓存等,你可以有,如果你保持MVC三层有,但仍然是所有这些东西可能在的WebAPI和JS应用也做...

所以长话短说,我认为,如果你想与我想你应该有一个RESTful API去和你的客户从浏览器的JavaScript直接调用它的趋势移动...

+0

一个问题:是什么您通常用于使用RESTful API执行网站的常用工具和javascript –

+0

@TranDuyLinh我使用Asp.Net WebApi来实现REST服务,因为我一直在致力于微软项目,所以显然t嘿帐篷使用自己的产品,和KnockoutJS为我们的前端代码... – Aram