你可以,但你不应该使用 JsonResult。Web Api 是一个天才的概念。Web APi 使 REST 变得更简单。对于每个实体,您都可以创建新的 ApiController 并通过它管理 CRUD 操作。这里有几点。
您提到我们不能使用比 Get、Post、Put、Delete 更多的操作,这是不正确的。我使用了以下操作。
public bool post()
{
return true;
}
[HttpPost]
public bool validate(int id)
{
return input == 0;
}
所以在上面的代码中,如果你用/cntrName做post操作,post方法会被调用,如果你post/cntrname/validate/4,validate会被调用。这意味着您可以对多个请求使用函数重载。
2. 我经常使用 angularJS,Web Api 帮助很大。您必须为每个 Angular 控制器声明 1 个 url,每个请求看起来都一样,但会进行适当的调用。3.它增加了可重用性。示例
[HttpPost]
public JsonResult post()
{
return Json("output",JsonRequestBehavior.AllowGet);
}
public string post()
{
return "output";
}
现在,如果您想在不同的控制器中使用上述方法,使用 MVC,您必须执行以下操作
(string) post().Data //get returned data from JsonResult and convert to string.
Web Api is just returning string
- Web API 是执行 ajax 请求的逻辑抽象。当然你可以使用 MVC(如果你愿意,你也可以使用 WebForms)。但是 web api 是编写 CRUD-REST 应用程序的更好方法。