using cuqmbr.TravelGuide.Application.Common.Interfaces.Services; using FluentValidation; using Microsoft.Extensions.Localization; namespace cuqmbr.TravelGuide.Application.Buses.Queries.GetBusesPage; public class GetBusesPageQueryValidator : AbstractValidator { public GetBusesPageQueryValidator( 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)); } }