Пример #1
0
        ICommandResultBase ValidateUserName(string username, UserNameOptions options)
        {
            var result = new CommandResultBase();

            if (username == null)
            {
                return(result.Failed("The username is null"));
            }

            var friendlyBlackList = BuildFriendlyBlackList(options.BlackListedCharacters.ToArray());

            if (string.IsNullOrWhiteSpace(username) || username.Length < options.RequiredLength)
            {
                result.Failed($"The username must be at least {options.RequiredLength} characters in length");
            }

            foreach (var character in options.BlackListedCharacters)
            {
                if (username.IndexOf(character) >= 0)
                {
                    result.Failed($"The username cannot contain {friendlyBlackList} characters");
                }
            }

            return(result.Errors.Any()
                ? result.Failed()
                : result.Success());
        }
Пример #2
0
        public UserNameValidator()
        {
            // TODO: Update error to reflect condifured UserNameOptions
            var options = new UserNameOptions();

            ErrorMessage = BuildError(options);
        }
Пример #3
0
        string BuildError(UserNameOptions options)
        {
            var sb = new StringBuilder();
            var friendlyBlackList = BuildFriendlyBlackList(options.BlackListedCharacters.ToArray());

            sb.Append("The {0} field cannot contain ")
            .Append(friendlyBlackList);
            if (options.RequiredLength > 0)
            {
                sb.Append(" and must be at least ")
                .Append(options.RequiredLength)
                .Append(" characters in length");
            }
            return(sb.ToString());
        }