Пример #1
0
        public void BeforeTest()
        {
            BeforeTest before = new BeforeTest();

            before.Setup();
            country   = before.country;
            deaths    = before.deaths;
            continent = before.continent;
        }
Пример #2
0
        /// <summary>
        /// 用当前定义检测一个值是否合法
        /// </summary>
        /// <param name="value"></param>
        /// <returns></returns>
        public virtual bool Test(string value)
        {
            var _be = new ParamDefinitionTestEventArgs(this);

            BeforeTest?.Invoke(_be);
            if (_be.Continue)
            {
                var _return = false;
                switch (Type)
                {
                case ParamType.Text:
                    if (Requierd)
                    {
                        _return = value != null && value.Length >= MinLength && value.Length <= MaxLength;
                    }
                    else
                    {
                        _return = value == null || value.Length >= MinLength && value.Length <= MaxLength;
                    }
                    break;

                case ParamType.URL:
                    bool _result = Regex.IsMatch(value ?? "", _URL);
                    if (Requierd)
                    {
                        _return = _result;
                    }
                    else
                    {
                        _return = value == null || _result;
                    }
                    break;

                case ParamType.Int:
                    int _intVal;
                    _result = int.TryParse(value, out _intVal);
                    if (Requierd)
                    {
                        _return = _result;
                    }
                    else
                    {
                        _return = value == null || _result;
                    }
                    break;

                case ParamType.Double:
                    double _doubleVal;
                    _result = double.TryParse(value, out _doubleVal);
                    if (Requierd)
                    {
                        _return = _result;
                    }
                    else
                    {
                        _return = value == null || _result;
                    }
                    break;

                case ParamType.Date:
                    _result = Regex.IsMatch(value ?? "", _DATE);
                    if (Requierd)
                    {
                        _return = _result;
                    }
                    else
                    {
                        _return = value == null || _result;
                    }
                    break;

                case ParamType.Time:
                    _result = Regex.IsMatch(value ?? "", _TIME);
                    if (Requierd)
                    {
                        _return = _result;
                    }
                    else
                    {
                        _return = value == null || _result;
                    }
                    break;

                case ParamType.DateTime:
                    _result = Regex.IsMatch(value ?? "", _DATETIME);
                    if (Requierd)
                    {
                        _return = _result;
                    }
                    else
                    {
                        _return = value == null || _result;
                    }
                    break;

                default:
                    _return = true;
                    break;
                }
                return(_return);
            }
            else
            {
                return(_be.Result);
            }
        }