Skip to content

Commit 34cfebc

Browse files
committed
Return status in switch statement
1 parent b7797e6 commit 34cfebc

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src/Api/Filters/CustomExceptionFilter.cs

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,25 +20,26 @@ public override void OnException(ExceptionContext context)
2020
{
2121
BaseResponse<int> response = new BaseResponse<int>(ResponseStatus.Fail);
2222

23-
(int statusCode, string message) = context.Exception switch
23+
(int statusCode, string message, ResponseStatus status) = context.Exception switch
2424
{
25-
UnauthorizedAccessException ex => (StatusCodes.Status401Unauthorized, ex.Message),
26-
NotFoundException ex => (StatusCodes.Status404NotFound, ex.Message),
27-
BadRequestException ex => (StatusCodes.Status400BadRequest, ex.Message),
28-
AlreadyExistsException ex => (StatusCodes.Status409Conflict, ex.Message),
29-
DatabaseOperationException ex => (StatusCodes.Status500InternalServerError, ex.Message),
25+
UnauthorizedAccessException ex => (StatusCodes.Status401Unauthorized, ex.Message, ResponseStatus.Fail),
26+
NotFoundException ex => (StatusCodes.Status404NotFound, ex.Message, ResponseStatus.Fail),
27+
BadRequestException ex => (StatusCodes.Status400BadRequest, ex.Message, ResponseStatus.Fail),
28+
AlreadyExistsException ex => (StatusCodes.Status409Conflict, ex.Message, ResponseStatus.Fail),
29+
DatabaseOperationException ex => (StatusCodes.Status500InternalServerError, ex.Message, ResponseStatus.Error),
3030
_ => HandleUnexpectedException(context.Exception)
3131
};
32+
response.Status = status;
3233
response.Message = message;
3334
context.Result = new JsonResult(response)
3435
{
3536
StatusCode = statusCode
3637
};
3738
}
3839

39-
private (int StatusCode, string Message) HandleUnexpectedException(Exception ex)
40+
private (int StatusCode, string Message, ResponseStatus status) HandleUnexpectedException(Exception ex)
4041
{
4142
_logger.LogError(ex, "An unexpected error occurred");
42-
return (StatusCodes.Status500InternalServerError, "An unexpected error occurred. Please try again later.");
43+
return (StatusCodes.Status500InternalServerError, "An unexpected error occurred. Please try again later.", ResponseStatus.Error);
4344
}
4445
}

0 commit comments

Comments
 (0)