You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
using System.Text.RegularExpressions;
namespace Business.KftcPasswordRule { /// <summary>
/// </summary>
public class PatternMatchRule : PasswordRule { private string pattern = @"^(?=.*\d)(?=.*[A-Z]).{9,30}$";
/// <summary>
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public PasswordValidationResult Validate(ValidationModel model) { if (model == null) { return new PasswordValidationResult { IsValid = false, Message = "invalid password." }; }
if (string.IsNullOrEmpty(model.Password)) { return new PasswordValidationResult { IsValid = false, Message = "invalid password." }; }
var res = Regex.IsMatch(model.Password, pattern); if (!res.Equals(true)) { return new PasswordValidationResult { IsValid = false, Message = "invalid password" }; }
Regex r = new Regex(@"[~`!@#$%^&*()-+=|\{}':;.,<>/?]"); if (!r.IsMatch(model.Password)) { return new PasswordValidationResult { IsValid = false, Message = "invalid password.Pattern mismatch." }; }
return new PasswordValidationResult { IsValid = true, Message = "valid" }; } } }
|