//[Consumes("application/x-www-form-urlencoded")] public ActionResult Post(Domain.Application.Dto.Request.Request <Applicant> json) { //var json = JsonConvert.DeserializeObject<Domain.Application.Dto.Request.Request<Applicant>>(value); ValidateApplicant validateApplicant = new ValidateApplicant(); ValidationResult validationResult = validateApplicant.Validate(json.Data); if (!validationResult.IsValid) { var errors = new List <ValidationErrorResponse>(); foreach (ValidationFailure result in validationResult.Errors) { errors.Add(new ValidationErrorResponse() { propertyName = result.PropertyName, ErrorMessage = result.ErrorMessage }); } Response <List <ValidationErrorResponse> > errorResponse = new Response <List <ValidationErrorResponse> > { Data = errors }; return(StatusCode((int)HttpStatusCode.BadRequest, errorResponse)); } var registeredId = _facade.RegisterApplicant(json); string getUrl = "https://localhost:5001/Applicant/"; string url = string.Format("{0}{1}", getUrl, registeredId); Response <AddResponse> response = new Response <AddResponse>() { Data = new AddResponse() { Url = url } }; return(CreatedAtAction(nameof(GetApplicant), new { id = registeredId }, response)); }
public ActionResult UpdateApplicant(int id, [FromBody] Applicant applicant) { try { ValidateApplicant validateApplicant = new ValidateApplicant(); ValidationResult validationResult = validateApplicant.Validate(applicant); if (!validationResult.IsValid) { var errors = new List <ValidationErrorResponse>(); foreach (ValidationFailure result in validationResult.Errors) { errors.Add(new ValidationErrorResponse() { propertyName = result.PropertyName, ErrorMessage = result.ErrorMessage }); } Response <List <ValidationErrorResponse> > errorResponse = new Response <List <ValidationErrorResponse> > { Data = errors }; return(StatusCode((int)HttpStatusCode.BadRequest, errorResponse)); } return(Ok(_facade.UpdateApplicant(id, applicant))); } catch { string message = string.Format("Unable to update applicant with specified id: {0}", id); return(StatusCode((int)HttpStatusCode.BadRequest, new Response <string>() { Data = message })); } }