Używam FluentValidation do sprawdzania poprawności po stronie serwera. Teraz miałem to przed wywołaniem funkcji walidacji musi:Wywołanie funkcji FluentValidation z wieloma parametrami
RuleFor(x => x.UserProfile).Must(ValidateProfile).WithMessage("We are sorry, you have already logged on " + DateTime.Now + ". Please come again tomorrow.");
teraz, że działa, ponieważ jedynym parametrem, który validateProfile Wystarczy UserProfile. to wszystko jest dobre.
Mój problem jest teraz, że staram się mieć funkcję z dwoma parametrami potwierdzić funkcja danych.Następnie który próbuję użyć do sprawdzania wygląda jak poniżej:
bool IsValid(string promocode, IUserProfile userProfile)
Teraz nie jestem pewien jak związać IsValid z FluentValidation. Jakieś pomysły?
Dziękuję bardzo. Tak, kodode jest właściwością sprawdzanego obiektu. a także chciałem pokazać błąd jako błąd kodowania, więc wprowadziłem niewielką zmianę w kodzie, który napisałeś. Ale to, co wysyłasz, działa doskonale. tutaj jest mój zmieniony kod RuleFor (x => x.PromoCode) .Must ((o, promocode) => IsValid (kod promocyjny, o.UserProfile)); – TeaLeave