Asp.net core mvc 如果没有WebAPI的帮助程序,这可以';这不是从MVC6返回状态码的最佳方式,不是吗?

Asp.net core mvc 如果没有WebAPI的帮助程序,这可以';这不是从MVC6返回状态码的最佳方式,不是吗?,asp.net-core-mvc,Asp.net Core Mvc,虽然我知道MVC6尚未发布,但它似乎缺少了WebAPI甚至MVC5的许多功能。我可以假设这不是发布时的样子吗 [HttpPost("")] public async Task<ActionResult> Post(Visit newVisit) { var username = User.Identity.GetUserName(); newVisit.UserName = username; if (await _repository.AddVisitAsync(n

虽然我知道MVC6尚未发布,但它似乎缺少了WebAPI甚至MVC5的许多功能。我可以假设这不是发布时的样子吗

[HttpPost("")]
public async Task<ActionResult> Post(Visit newVisit)
{
  var username = User.Identity.GetUserName();

  newVisit.UserName = username;

  if (await _repository.AddVisitAsync(newVisit))
  {
    Response.StatusCode = (int) HttpStatusCode.Created;

    return Json(newVisit);
  }

  return new HttpStatusCodeResult((int)HttpStatusCode.BadRequest);
}
[HttpPost(“”)
公共异步任务发布(访问newVisit)
{
var username=User.Identity.GetUserName();
newVisit.UserName=用户名;
if(wait_repository.AddVisitAsync(newVisit))
{
Response.StatusCode=(int)HttpStatusCode.Created;
返回Json(newVisit);
}
返回新的HttpStatusCodeResult((int)HttpStatusCode.BadRequest);
}

注意Reponse.StatusCode和HttpStatusCodeResult中的强制转换(我确实错过了返回Ok(…)、Created(…)等。

MVC 5和Web API 2的一些功能尚未移交给MVC 6(包括Web API)。在处记录问题是请求任何缺少的功能的正确位置。请检查现有问题,因为许多问题已被跟踪


请注意,当MVC和Web API合并时,有几个API被重命名,因为我们不想有重复的API,所以即使没有完全匹配的API,它也可以有一个新名称。

目前看起来像框架中的一个bug。bug已提交。请在这里找到答案:是的,FX已经从该点更改了很多t、 它现在支持常见的Ok()、BadRequest()和类似的助手方法。