我试图利用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;
}
这(显然)将不起作用,因为我不能仅仅返回singleCall对象。它期望一个Microsoft.AspNetCore.Mvc.IActionResult。所以我完全知道问题是什么,我只是不知道如何解决。
任何见解或帮助将不胜感激!
答案 0 :(得分:2)
您要return Ok(singleCall);
答案 1 :(得分:1)
请尝试:
return Ok(singleCall);
您的对象将是正确的HTTP结果。
答案 2 :(得分:0)
您还可以返回自定义消息。
catch (Exception ex)
{
return Json(new { status = "error", message = ex.InnerException });
}