用于客户端交互的web api或控制器

时间:2012-09-30 19:14:38

标签: javascript asp.net-mvc asp.net-web-api rich-internet-application

我目前正在开发一个新的MVC4应用程序,它将是一个具有大量客户端交互的丰富应用程序。

以前对于MVC应用程序,我会使用控制器来简化javascript服务器端交互。现在随着web api和休息服务的出现,我正在质疑这种方法。

我会对开发人员的意见感兴趣,作为客户端/服务器端交互的更好实践,最好是使用web api而不是控制器操作进行此类交互吗?

1 个答案:

答案 0 :(得分:1)

我会选择Web API。您说客户端交互在您的项目中占有重要地位, 因此应该有自己的项目。

主要原因是关注点分离,因为它更清晰,将从客户端使用的API返回Html的控制器分开。使用专用于此特定主题的Web API项目将产生更清晰的代码。

例如,在MVC Controller中,为了返回一个对象,您将编写以下代码: ActionResult类型的return Json(customInstance);。要在WebAPI中实现相同的功能,请使用以下类型的代码:return customInstance;类型的CustomObject。