Hej.,
używam FluentValidation
i podczas dodawania usera waliduję go np. tak:
public RegisterUserRequestValidator(ApplicationDbContext dbContext)
{
RuleFor(x => x.Email)
.NotEmpty()
.EmailAddress();
RuleFor(x => x.Email)
.Custom((value, context) =>
{
var emailInUse = dbContext.Users.Any(u => u.Email == value);
if (emailInUse)
{
context.AddFailure("Email", "That email is taken");
}
});
RuleFor(x => x.Password).MinimumLength(8);
RuleFor(x => x.ConfirmPassword).Equal(e => e.Password);
}
teraz gdy usera już mam i chce go edytować - no właśnie jak to tego podchodzicie - czy pozwalać na edycję loginu?
Jeśli tak to zastosowanie powyższej reguły podczas edycji i braku zmiany loginu zaskutkuje błędem walidacji. Jak to robicie? Jak odpuścić walidację gdy login nie został zmieniony?