コード例 #1
0
        public bool IsValidUserNameForm(ModelState modelState, ChangeUserNameFormViewModel userNameForm)
        {
            var prefix        = nameof(userNameForm);
            var userNameField = $"{prefix}.{nameof(userNameForm.UserName)}";

            var validationRules = new List <ValidationRuleItem <ChangeUserNameFormViewModel> >()
            {
                new ValidationRuleItem <ChangeUserNameFormViewModel> {
                    Field = userNameField, Rule = model => !string.IsNullOrEmpty(model.UserName), ErrorMessage = "validation.required".AsWebSiteString()
                },
                new ValidationRuleItem <ChangeUserNameFormViewModel> {
                    Field = userNameField, Rule = model => _userValidationService.IsValidEmail(model.UserName), ErrorMessage = "validation.email".AsWebSiteString()
                },
                new ValidationRuleItem <ChangeUserNameFormViewModel> {
                    Field = userNameField, Rule = model => _userValidationService.IsValidUserName(model.UserName), ErrorMessage = "validation.invalidusername".AsWebSiteString()
                }
            };

            return(userNameForm.IsValid(validationRules, modelState));
        }