public ModelStateValidationProblemDetails(ModelStateDictionary modelState)
            : this()
        {
            if (modelState == null)
            {
                throw new ArgumentNullException(nameof(modelState));
            }

            foreach (KeyValuePair <string, ModelStateEntry> keyValuePair in modelState)
            {
                string key = keyValuePair.Key;
                ModelErrorCollection errors = keyValuePair.Value.Errors;

                if (errors != null && errors.Any())
                {
                    var errorMessages = new List <string>();

                    for (var index = 0; index < errors.Count; ++index)
                    {
                        errorMessages.Add(GetErrorMessage(errors[index]));
                    }

                    Errors.Add(new ValidationProblem(key, errorMessages));
                }
            }
        }
        /// <summary>
        /// Maps the validation errors from modelStateDictionary into the WebApi error representation
        /// </summary>
        /// <param name="modelStateDictionary">State of the model.</param>
        /// <returns>The list of validation errors, empty list if no errors</returns>
        private static IEnumerable <ValidationError> MapValidationErrors(ModelStateDictionary modelStateDictionary)
        {
            if (modelStateDictionary != null)
            {
                foreach (string key in modelStateDictionary.Keys)
                {
                    ModelErrorCollection errors = modelStateDictionary[key].Errors;

                    if (errors.Any())
                    {
                        yield return(new ValidationError
                        {
                            Key = key,
                            Errors = errors.Select(error => error.ErrorMessage).ToList()
                        });
                    }
                }
            }
        }
 public ActionResult LogOn(LogOnModel model)
 {
     if (!ModelState.IsValid)
     {
         ModelErrorCollection captchaErr = ModelState["CaptchaCode"].Errors;
         if (captchaErr.Any())
         {
             captchaErr.Clear();
             captchaErr.Add("Вы должны указать символы, изображенные на картинке.");
         }
         return(ContextDependentView());
     }
     if (Membership.ValidateUser(model.UserName, model.Password))
     {
         FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
         if (!Request["ReturnURL"].IsNullOrEmpty())
         {
             return(new RedirectResult(Request["ReturnURL"]));
         }
         return(RedirectToAction("Index", AccessHelper.getStartUserController(model.UserName), new { lang = AccessHelper.CurrentLang.ShortName }));
     }
     return(ContextDependentView());
 }
Пример #4
0
 private static bool IsErrorAvalilableIn(ModelErrorCollection errors, string errorMessage)
 {
     return(errors.Any(error => error.ErrorMessage == errorMessage));
 }
 private static bool IsErrorAvalilableIn(ModelErrorCollection errors, string errorMessage)
 {
     return errors.Any(error => error.ErrorMessage == errorMessage);
 }