public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            var value = (GamesFilterAttributes)details.Value;

            if (value == null)
            {
                return;
            }

            SortingObject        sortingObject        = value.SortingObject;
            PublishingDatePeriod publishingDatePeriod = value.PublishingDatePeriod;
            decimal minPrice = value.MinPrice;
            decimal maxPrice = value.MaxPrice;

            if (!Enum.IsDefined(sortingObject.GetType(), sortingObject) ||
                !Enum.IsDefined(publishingDatePeriod.GetType(), publishingDatePeriod))
            {
                details.Message = "Undefined value of enum";
                throw new InvalidArgumentException(details);
            }

            if (minPrice < 0 || maxPrice < 0)
            {
                details.Message = "Price must be more or equal then zero";
                throw new InvalidArgumentException(details);
            }

            if (minPrice > maxPrice)
            {
                details.Message = "Min price must be less then max price";
                throw new InvalidArgumentException(details);
            }
        }
Ejemplo n.º 2
0
        public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            var dictionary = (IDictionary <string, string>)details.Value;

            if (dictionary == null)
            {
                details.Message = "Dictionary must be not nullable";
                throw new InvalidArgumentException();
            }

            foreach (KeyValuePair <string, string> pair in dictionary)
            {
                if (pair.Key.Length > MaxKeyLength)
                {
                    details.Message = "Key length is not available";
                    throw new InvalidArgumentException(details);
                }

                if (pair.Value.Length > MaxValueLength)
                {
                    details.Message = "Value length is not available";
                    throw new InvalidArgumentException(details);
                }
            }
        }
Ejemplo n.º 3
0
        public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            var value = (Enum)details.Value;

            if (!Enum.IsDefined(value.GetType(), value))
            {
                details.Message = "Undefined value of enum";
                throw new InvalidArgumentException(details);
            }
        }
Ejemplo n.º 4
0
        public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            var data = (DateTime)details.Value;

            if (data > DateTime.UtcNow)
            {
                details.Message = "Date(time) must be before current date(time)";
                throw new InvalidArgumentException(details);
            }
        }
        public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            base.ValidateArgument(details);
            var value = (string)details.Value;

            if (value.Length > MaxLength)
            {
                details.Message = $"String length must be less or equal {MaxLength}";
                throw new InvalidArgumentException(details);
            }
        }
 public override void ValidateArgument(ArgumentExceptionDetails details)
 {
     try
     {
         CheckValue((short)details.Value);
     }
     catch (ArgumentException e)
     {
         details.Message = e.Message;
         throw new InvalidArgumentException(details);
     }
 }
        public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            IDictionary <int, short> productQuantity = details.Value as IDictionary <int, short>;

            foreach (var pair in productQuantity)
            {
                if (pair.Value <= 0)
                {
                    details.Message = "Quantity must be positive";
                    throw new InvalidArgumentException(details);
                }
            }
        }
        public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            var value = (OrdersFilterAttributes)details.Value;

            if (value == null)
            {
                return;
            }

            if (value.From > value.To)
            {
                details.Message = "Date 'To' must be after 'From'";
                throw new InvalidArgumentException(details);
            }
        }
Ejemplo n.º 9
0
        public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            var value = (string)details.Value;

            if (value == null)
            {
                details.Message = "String must be not null";
                throw new InvalidArgumentException(details);
            }

            if (value.Length == 0)
            {
                details.Message = "String must be not empty";
                throw new InvalidArgumentException(details);
            }
        }
Ejemplo n.º 10
0
        public override void ValidateArgument(ArgumentExceptionDetails details)
        {
            _details = details;

            var game = details.Value as EditingGameDto;

            ValidateNames(game.LanguagesNames);
            ValidateDescriptions(game.LanguagesDescriptions);

            var result = new List <ValidationResult>();

            if (!Validator.TryValidateObject(game, new ValidationContext(game), result, true))
            {
                var error = result.First();
                _details.Message = $"Member: {error.MemberNames.First()}, message: {error.ErrorMessage}";
            }
        }
 public abstract void ValidateArgument(ArgumentExceptionDetails details);