public override Task OnExceptionAsync(ExceptionContext context) { _logProvider.Write(context.Exception.ToString()); var errorStatusCode = context.Exception is ArgumentException ? 400 : context.Exception is InvalidCredentialException ? 401 : 500; context.Result = new JsonResult( new Erro { Mensagem = context.Exception.Message, Status = errorStatusCode }); _httpContextAccessor.HttpContext.Response.StatusCode = errorStatusCode; return(base.OnExceptionAsync(context)); }