public CreateRoleLocalizationCommand( IAccessValidator accessValidator, IResponseCreator responseCreator, IRoleLocalizationRepository roleLocalizationRepository, IDbRoleLocalizationMapper roleLocalizationMapper, ICreateRoleLocalizationRequestValidator requestValidator, IHttpContextAccessor httpContextAccessor) { _accessValidator = accessValidator; _responseCreator = responseCreator; _roleLocalizationRepository = roleLocalizationRepository; _roleLocalizationMapper = roleLocalizationMapper; _requestValidator = requestValidator; _httpContextAccessor = httpContextAccessor; }
public CreateRoleRequestValidator( IRightsIdsValidator rightsIdsValidator, ICreateRoleLocalizationRequestValidator localizationRequestValidator) { RuleFor(x => x.Localizations) .Cascade(CascadeMode.Stop) .NotNull().WithMessage("Localizations can't be empty.") .Must(x => x.Any()).WithMessage("Localizations can't be empty.") .Must(x => !x.GroupBy(rl => rl.Locale).Any(group => group.Count() > 1)) .WithMessage("Role must have only one localization per locale."); RuleForEach(x => x.Localizations) .SetValidator(localizationRequestValidator); RuleFor(x => x.Rights) .NotEmpty() .SetValidator(rightsIdsValidator); }