ASP.NET MVC用于双重表示和休息服务。

时间:2016-07-04 11:04:15

标签: c# rest asp.net-mvc-4 asp.net-mvc-5

我正在开发ASP.NET MVC5 Web应用程序。假设我已经在表示层中使用CMS实现了管理面板:admin可以完全访问所有CRUD操作。

另外,我需要创建只能在HttpGet请求下运行的Restful API。我应该在解决方案中创建另一个基于WebAPI的项目,还是可以执行以下操作:

RestfulController:Controller

public ActionResult MyAwesomeMethod(int id){
 return Json(model, JsonRequestBehavior.AllowGet); 
}

或者即使我也需要支持HttpPost请求,我可以执行以下操作:

[HttpPost]
public void MyBeautifulMethod(string name, string department){
 //TODO staff with the data...
}

是允许接近还是我只需要使用WebAPI?

1 个答案:

答案 0 :(得分:1)

当我们创建mvc控制器时,您正在从Controller类继承您的控制器。当我们创建web-api控制器时,我们从ApiController继承它。所以我们不能把api方法和动作方法放在同一个控制器中。

但是一个mvc项目可以有两种类型的控制器。这取决于你在同一个项目或不同的项目中创建web api控制器。

如果我帮忙,请标记为答案。