public override void OnException(ExceptionContext context) { HttpStatusCode status; string message; var exceptionType = context.Exception.GetType(); if (exceptionType == typeof(UnauthorizedAccessException)) { message = "Access to the Web API is not authorized."; status = HttpStatusCode.Unauthorized; } else if (exceptionType == typeof(DivideByZeroException)) { message = "Internal Server Error. Msg: " + JsonConvert.SerializeObject(context.Exception); status = HttpStatusCode.InternalServerError; } else { message = "Internal Server Error. Msg: " + JsonConvert.SerializeObject(context.Exception); status = HttpStatusCode.InternalServerError; } var oResponseErrorDto = new ResponseErrorDto { Message = message, Type = exceptionType.ToString(), }; var oCcResponseHelper = new ResponseHelper(); context.Result = new ObjectResult(oCcResponseHelper.GenerarResponse500(oResponseErrorDto)); base.OnException(context); }