示例#1
0
        public static Param <short> IsGreaterOrEqual(this Param <short> param, short limit)
        {
            if (!(param.Value >= limit))
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotGte.Inject(param.Value, limit));
            }

            return(param);
        }
示例#2
0
        public static Param <short> IsLowerThan(this Param <short> param, short limit)
        {
            if (param.Value >= limit)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotLt.Inject(param.Value, limit));
            }

            return(param);
        }
        public static Param <T[]> HasItems <T>(this Param <T[]> param)
        {
            if (param.Value == null || param.Value.Length < 1)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsEmptyCollection);
            }

            return(param);
        }
        public static Param <IDictionary <TKey, TValue> > HasItems <TKey, TValue>(this Param <IDictionary <TKey, TValue> > param)
        {
            if (param.Value == null || param.Value.Count < 1)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsEmptyCollection);
            }

            return(param);
        }
        public static Param <T> HasItems <T>(this Param <T> param) where T : class, ICollection
        {
            if (param.Value == null || param.Value.Count < 1)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsEmptyCollection);
            }

            return(param);
        }
示例#6
0
        public static Param <double> IsGreaterThan(this Param <double> param, double limit)
        {
            if (param.Value <= limit)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotGt.Inject(param.Value, limit));
            }

            return(param);
        }
示例#7
0
        public static Param <double> IsLowerOrEqual(this Param <double> param, double limit)
        {
            if (!(param.Value <= limit))
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotLte.Inject(param.Value, limit));
            }

            return(param);
        }
示例#8
0
        public static Param <string> IsNotNullOrWhiteSpace(this Param <string> param)
        {
            if (string.IsNullOrWhiteSpace(param.Value))
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotNullOrWhiteSpace);
            }

            return(param);
        }
        public static TypeParam IsOfType(this TypeParam param, Type type)
        {
            if (!param.Type.Equals(type))
            {
                throw ExceptionFactory.CreateForParamValidation(param,
                                                                EnsureRes.Ensure_IsNotOfType.Inject(param.Type.FullName));
            }

            return(param);
        }
示例#10
0
        public static Param <byte> IsInRange(this Param <byte> param, byte min, byte max)
        {
            if (param.Value < min)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotInRange_ToLow.Inject(param.Value, min));
            }

            if (param.Value > max)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotInRange_ToHigh.Inject(param.Value, max));
            }

            return(param);
        }
        public static Param <Type> IsClass(this Param <Type> param)
        {
            if (param.Value == null)
            {
                throw ExceptionFactory.CreateForParamValidation(param,
                                                                EnsureRes.Ensure_IsNotClass_WasNull);
            }

            if (!param.Value.IsClass)
            {
                throw ExceptionFactory.CreateForParamValidation(param,
                                                                EnsureRes.Ensure_IsNotClass.Inject(param.Value.FullName));
            }

            return(param);
        }
示例#12
0
        public static Param <string> HasLengthBetween(this Param <string> param, int minLength, int maxLength)
        {
            if (string.IsNullOrEmpty(param.Value))
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotNullOrEmpty);
            }

            var length = param.Value.Length;

            if (length < minLength)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotInRange_ToShort.Inject(minLength, maxLength, length));
            }

            if (length > maxLength)
            {
                throw ExceptionFactory.CreateForParamValidation(param, EnsureRes.Ensure_IsNotInRange_ToLong.Inject(minLength, maxLength, length));
            }

            return(param);
        }