我是一个没有"网络东西"经验的C++人,但我的主管要我去学习"ASP.NET MVC 6"的方法,因为它是最新的时髦的东西.
我设法得到至少一个教程,但我看不到任何参考和任何文档.我在哪里查找有哪些类和方法?
我目前的问题是我试图弄清楚如何从我的控制器中的Create方法返回一个409的Http状态.我没有看到HttpConflict方法.我该怎么称呼?
使用ASP.NET Core 1.0,您可以使用StatusCode(int statusCode)任何可用的方法Controller.
[HttpPost]
public IActionResult Create([FromBody] Widget item)
{
// ...
// using the HttpStatusCode enum keeps it a little more readable
return StatusCode((int) HttpStatusCode.Conflict);
}
Run Code Online (Sandbox Code Playgroud)
在ASP MVC 6中,您可以StatusCodeResult从控制器方法返回一个实例:
public IActionResult ConflictAction()
{
return new StatusCodeResult(StatusCodes.Status409Conflict);
}
Run Code Online (Sandbox Code Playgroud)
更好的是,你可以创建自己的HttpConflictResult类:
public class HttpConflictResult : StatusCodeResult
{
public HttpConflictResult() : base(StatusCodes.Status409Conflict)
{
}
}
public IActionResult ConflictAction()
{
return new HttpConflictResult();
}
Run Code Online (Sandbox Code Playgroud)
如果您想知道,那些结果类型只是设置StatusCode响应的属性,因此以下将基于以下两种方法StatusCodeResult:
public IActionResult ConflictAction()
{
Response.StatusCode = StatusCodes.Status409Conflict;
return new EmptyResult();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3591 次 |
| 最近记录: |