C# 异步任务 <IActionResult> return 对象
C# Async Task <IActionResult> return Object
我正在尝试使用 IActionResult 接口来抛出特定的异常。但是此刻我被困在控制器上了。
我编写了以下代码来获得单个呼叫:
[Route("singlecall")]
[HttpGet]
[ProducesResponseType(200, Type = typeof(Models.CallModel))]
[ProducesResponseType(404)]
public async Task<IActionResult> GetSingleCall([FromQuery]string callId, [FromQuery] string token)
{
CallModel singleCall = await CustomerPortalBC.CallManagementBusiness.CallService.GetSingleCall(new Guid(callId), new Guid(token));
if (singleCall == null){
return NotFound();
}
return singleCall;
}
这(显然)不起作用,因为我不能只 return singleCall 对象。它期望 Microsoft.AspNetCore.Mvc.IActionResult。所以我很清楚是什么问题,只是不知道怎么解决。
如有任何见解或帮助,我们将不胜感激!
您想return Ok(singleCall);
请尝试:
return Ok(singleCall);
您的对象将是正确的 HTTP 结果。
您还可以return自定义消息。
catch (Exception ex)
{
return Json(new { status = "error", message = ex.InnerException });
}
我正在尝试使用 IActionResult 接口来抛出特定的异常。但是此刻我被困在控制器上了。 我编写了以下代码来获得单个呼叫:
[Route("singlecall")]
[HttpGet]
[ProducesResponseType(200, Type = typeof(Models.CallModel))]
[ProducesResponseType(404)]
public async Task<IActionResult> GetSingleCall([FromQuery]string callId, [FromQuery] string token)
{
CallModel singleCall = await CustomerPortalBC.CallManagementBusiness.CallService.GetSingleCall(new Guid(callId), new Guid(token));
if (singleCall == null){
return NotFound();
}
return singleCall;
}
这(显然)不起作用,因为我不能只 return singleCall 对象。它期望 Microsoft.AspNetCore.Mvc.IActionResult。所以我很清楚是什么问题,只是不知道怎么解决。
如有任何见解或帮助,我们将不胜感激!
您想return Ok(singleCall);
请尝试:
return Ok(singleCall);
您的对象将是正确的 HTTP 结果。
您还可以return自定义消息。
catch (Exception ex)
{
return Json(new { status = "error", message = ex.InnerException });
}