public static void Validate(this IConstrainedString val, string arg)
 {
     if (val == null || !val.CheckRange())
     {
         throw new ArgumentException(arg);
     }
 }
        public static bool CheckRange(this IConstrainedString val)
        {
            int length = val.Length;

            return(length >= val.MinLength && length <= val.MaxLength);
        }