public static void ApplyToModelState(this ValidationEnvelopeDto validationEnvelope, ControllerContext controllerContext, bool avoidDuplicates = false) { foreach (var error in validationEnvelope.Errors) { if (!avoidDuplicates || !controllerContext.Controller.ViewData.ModelState.ContainsKey(error.Fields) || !controllerContext.Controller.ViewData.ModelState[error.Fields].Errors.Any()) { controllerContext.Controller.ViewData.ModelState.AddModelError(error.Fields, error.GetMessage()); } } }
public static void ApplyToModelState(this ValidationEnvelopeDto validationEnvelope, ControllerContext controllerContext, string baseProperty, bool avoidDuplicates = false) { foreach (var error in validationEnvelope.Errors) { if (!avoidDuplicates || !controllerContext.Controller.ViewData.ModelState.ContainsKey($"{baseProperty}.{error.Fields}") || !controllerContext.Controller.ViewData.ModelState[$"{baseProperty}.{error.Fields}"].Errors.Any()) { var fieldName = BuildFieldName(error.Fields, controllerContext); controllerContext.Controller.ViewData.ModelState.AddModelError($"{baseProperty}.{fieldName}", error.GetMessage()); } } }
public void SetWarnings(ValidationEnvelopeDto envelope) { if (!ProcessedWarnings && !envelope.Errors.Any()) { WarningsToProcess = envelope.Warnings ?? new List <ApiWarning>(); WarningsToProcess = WarningsToProcess.Where(x => RecognisedWarningCodes.Contains(x.Code)).ToList(); ProcessedWarnings = true; if (OriginalStatusId != (int)eLookupGroupStatus.Closed && StatusId == (int)eLookupGroupStatus.Closed && GroupTypeId == (int)GT.MultiacademyTrust) { WarningsToProcess.Add(new ApiWarning { Code = UIWarningCodeMatClosureAreYouSure, Message = "Are you sure you want to close this multi-academy trust?" }); } if (OriginalStatusId != (int)eLookupGroupStatus.Closed && StatusId == (int)eLookupGroupStatus.Closed && GroupTypeId == (int)GT.SingleacademyTrust) { WarningsToProcess.Add(new ApiWarning { Code = UIWarningCodeSatClosureAreYouSure, Message = "Are you sure you want to close this single-academy trust?" }); } } }