using cuqmbr.TravelGuide.Application.Common.Services; using FluentValidation; using Microsoft.Extensions.Localization; namespace cuqmbr.TravelGuide.Application.Cities.Queries.GetCitiesPage; public class GetCitiesPageQueryValidator : AbstractValidator { public GetCitiesPageQueryValidator( IStringLocalizer localizer, SessionCultureService cultureService) { RuleFor(v => v.PageNumber) .GreaterThanOrEqualTo(1) .WithMessage( String.Format( cultureService.Culture, localizer["FluentValidation.GreaterThanOrEqualTo"], 1)); RuleFor(v => v.PageSize) .GreaterThanOrEqualTo(1) .WithMessage( String.Format( cultureService.Culture, localizer["FluentValidation.GreaterThanOrEqualTo"], 1)) .LessThanOrEqualTo(50) .WithMessage( String.Format( cultureService.Culture, localizer["FluentValidation.LessThanOrEqualTo"], 50)); RuleFor(v => v.Search) .MaximumLength(64) .WithMessage( String.Format( cultureService.Culture, localizer["FluentValidation.MaximumLength"], 64)); } }