/// <summary> /// General validation error processing delegate. /// Wraps any failed model validation into <see cref="LykkeApiErrorResponse" />. /// To return custom error code, throw <see cref="LykkeApiErrorException" /> from validator /// with appropriate code from <see cref="LykkeApiErrorCodes.ModelValidation" />. /// If code does not exist feel free to create a new one. /// </summary> public static IActionResult CreateInvalidModelResponse(ActionContext context) { { var apiErrorResponse = new LykkeApiErrorResponse { Error = LykkeApiErrorCodes.ModelValidation.ModelValidationFailed.Name, Message = GetErrorMessage(context.ModelState) }; return(new BadRequestObjectResult(apiErrorResponse) { ContentTypes = { "application/json" } }); } }
/// <summary> /// General validation error processing delegate. /// Wraps any failed model validation into <see cref="LykkeApiErrorResponse" />. /// To return custom error code, throw <see cref="LykkeApiErrorException" /> from validator /// with appropriate code from <see cref="ApiErrorCodes.ModelValidation" />. /// If code does not exist feel free to create a new one. /// </summary> public static IActionResult CreateInvalidModelResponse(ActionContext context) { var errorCode = ApiErrorCodes.ModelValidation.ModelValidationFailed.Name; if (context.ModelState.ContainsKey(_emailKey) && context.ModelState[_emailKey].Errors.Any()) { errorCode = nameof(ApiErrorCodes.Service.InvalidEmailFormat); } else if (context.ModelState.ContainsKey(_passwordKey) && context.ModelState[_passwordKey].Errors.Any()) { errorCode = nameof(ApiErrorCodes.Service.InvalidPasswordFormat); } var apiErrorResponse = new LykkeApiErrorResponse { Error = errorCode, Message = GetErrorMessage(context.ModelState) }; return(new BadRequestObjectResult(apiErrorResponse) { ContentTypes = { "application/json" } }); }