コード例 #1
0
        public CarPhotoCreateCommandValidator(IGenericReadRepository readRepository, ICarModelFiltersProvider modelFiltersProvider, ICarBodyTypeFiltersProvider bodyTypeFiltersProvider, IColorCodeFiltersProvider colorFiltersProvider) : base(readRepository)
        {
            _modelFiltersProvider    = modelFiltersProvider;
            _bodyTypeFiltersProvider = bodyTypeFiltersProvider;
            _colorFiltersProvider    = colorFiltersProvider;

            RuleFor(x => x.ModelId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ModelExists);

            RuleFor(x => x.BodyTypeId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(BodyTypeExists);

            RuleFor(x => x.ColorId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ColorExists);

            RuleFor(x => x.Photo)
            .NotEmptyWithMessage()
            .DependentRules(() =>
            {
                RuleFor(x => x.Photo)
                .Cascade(CascadeMode.Continue)
                .MustAsync(FileSizeIsValid)
                .WithMessage($"File size should be up to {CarPhotoConstraints.FileMaxSize / 1000000.0f}MB")
                .MustAsync(FileTypeIsValid)
                .WithMessage($"File type is prohibited. Allowed types - {GetSupportedFileTypesString()}");
            });
        }
コード例 #2
0
 public ColorCodeQueryFunctionality(IUnitOfWork unitOfWork, IMapperFactory mapperFactory, IGenericReadRepository readRepository,
                                    IColorCodeFiltersProvider colorCodeFiltersProvider, IModelSupportsColorFiltersProvider modelColorFiltersProvider,
                                    IModelSupportsColorRelationsProvider modelColorRelationsProvider) : base(unitOfWork, mapperFactory, readRepository, colorCodeFiltersProvider)
 {
     _modelColorFiltersProvider   = modelColorFiltersProvider;
     _modelColorRelationsProvider = modelColorRelationsProvider;
 }
コード例 #3
0
        public ColorCodeCreateCommandValidator(IGenericReadRepository readRepository, IColorCodeFiltersProvider filtersProvider) : base(readRepository)
        {
            _filtersProvider = filtersProvider;

            RuleFor(x => x.Name)
            .NotEmptyWithMessage()
            .MaxLengthWithMessage(ColorCodeConstraints.NameMaxLength)
            .MustNotExistWithMessageAsync(NameDoesNotExist);

            RuleFor(x => x.HexValue)
            .NotEmptyWithMessage()
            .MaxLengthWithMessage(ColorCodeConstraints.HexValueLength)
            .IsValidHexColorCodeWithMessage();
        }
コード例 #4
0
        public CarColorAssignmentCommandValidator(IGenericReadRepository readRepository, ICarModelFiltersProvider modelFiltersProvider, IColorCodeFiltersProvider colorFiltersProvider, IModelSupportsColorFiltersProvider modelColorFiltersProvider) : base(readRepository)
        {
            _modelFiltersProvider      = modelFiltersProvider;
            _colorFiltersProvider      = colorFiltersProvider;
            _modelColorFiltersProvider = modelColorFiltersProvider;

            RuleFor(x => x.ModelId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ModelExists);

            RuleFor(x => x.ColorId)
            .NotEmptyWithMessage()
            .MustExistsWithMessageAsync(ColorExists);
        }