Files
WatchIt/WatchIt.WebAPI/WatchIt.WebAPI.Validators/Persons/PersonRequestValidator.cs

19 lines
604 B
C#

using FluentValidation;
using WatchIt.Common.Model.Persons;
using WatchIt.Database;
namespace WatchIt.WebAPI.Validators.Persons;
public class PersonRequestValidator : AbstractValidator<PersonRequest>
{
public PersonRequestValidator(DatabaseContext database)
{
RuleFor(x => x.Name).NotEmpty().MaximumLength(100);
RuleFor(x => x.FullName).MaximumLength(200);
RuleFor(x => x.Description).MaximumLength(1000);
When(x => x.GenderId.HasValue, () =>
{
RuleFor(x => x.GenderId!.Value).MustBeIn(database.Genders.Select(g => g.Id));
});
}
}