Nan*_*dun 7 asp.net-mvc asp.net-core-mvc .net-core
对于HTTP 500代码,Microsoft.AspNetCore.Mvc.Controller基类没有等效的BadRequest(),Ok(),NoContent()等。
我们为什么不能做一个
try{
oops();
}
catch(Excpetion e){
//some handling
return InternalServerError(e);
}
Run Code Online (Sandbox Code Playgroud)
我知道可以返回StatusCode(500);
但是我们正在尝试与我们的HTTP代码更加一致,并且想知道对于500个代码,是否存在与Ok()更一致的东西。
Lui*_*eia 12
如果就像我一样,您不明白Karim 的答案中的StatusCode方法来自哪里,那么此代码也可以工作:
var errorObjectResult = new ObjectResult(exceptionMessage);
errorObjectResult.StatusCode = StatusCodes.Status500InternalServerError;
return errorObjectResult;
Run Code Online (Sandbox Code Playgroud)
ASP.NET Core 2.x没有内部服务器错误方法。相反,您可以包括以下库。
using Microsoft.AspNetCore.Http;
Run Code Online (Sandbox Code Playgroud)
然后使用下面的代码。
return new StatusCodeResult(StatusCodes.Status500InternalServerError);
Run Code Online (Sandbox Code Playgroud)
或者,如果您想在响应中添加异常,请尝试以下代码
var result = StatusCode(StatusCodes.Status500InternalServerError, exception);
return result;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2351 次 |
| 最近记录: |