public ExistingUsernameValidator( ICredentialRequirmentValidator credentialRequirmentValidator, IIdentityContext identityContext) { RuleFor(model => model) .MustAsync(async(model, token) => await identityContext.UsernameExists(model)) .WithMessage((model, value) => $"Username {value} doesn't exists"); }
public UsernameValidator(ICredentialRequirmentValidator credentialValidator) { var reason = "Username doesn't meet requirments"; RuleFor(model => model) .Must(model => ValidateUsername(credentialValidator, model, out reason)) .WithMessage(reason); }
public Validator(ICredentialRequirmentValidator validator, IIdentityContext context) { RuleFor(model => model.NewPassword).Password(validator); RuleFor(model => model.Username).ExistingUsername(validator, context); RuleFor(model => model.NewUsername).UniqueUsername(validator, context); }
public UniqueUsernameValidator( ICredentialRequirmentValidator credentialValidator, IIdentityContext identityContext) { RuleFor(model => model) .MustAsync(async(model, token) => !await identityContext.UsernameExists(model)) .WithMessage((model, value) => $"Username: {value} is not available"); }
public static void Password <TRequest>( this IRuleBuilderInitial <TRequest, string> builder, ICredentialRequirmentValidator validator) { builder .Cascade(CascadeMode.StopOnFirstFailure) .NotEmpty() .SetValidator(new PasswordRequirmentValidator(validator)); }
public static void UniqueUsername <TRequest>( this IRuleBuilderInitial <TRequest, string> builder, ICredentialRequirmentValidator validator, IIdentityContext context) { builder .Cascade(CascadeMode.StopOnFirstFailure) .NotEmpty() .SetValidator(new UsernameRequirmentValidator(validator)) .SetValidator(new UniqueUsernameValidator(validator, context)); }
public PasswordValidator(ICredentialRequirmentValidator credentialValidator) { _credentialValidator = credentialValidator; RuleFor(model => model).NotEmpty(); var reason = "Password doesn't meet requirments"; RuleFor(model => model) .Must(model => ValidatePassword(model, out reason)) .WithMessage(reason); }
private bool ValidateUsername(ICredentialRequirmentValidator validator, string value, out string reason) { reason = string.Empty; var result = validator .ValidateAsync(CredentialType.Username, value) .Result; if (!result.IsValid) { reason = string.Join(Environment.NewLine, result.ValidationErrors); return(false); } return(true); }
public Validator(ICredentialRequirmentValidator validator) { RuleFor(model => model.Password).Password(validator); RuleFor(model => model.Username).Username(validator); }
public Validator(ICredentialRequirmentValidator context) { RuleFor(model => model.Username).Username(context); }