Example #1
0
        public static IEnumerable <ValidataErrorModel> Validata <T>(this T t) where T : BaseModel
        {
            Type type = typeof(T);
            List <ValidataErrorModel> validataErrorModels = validataErrorModels = new List <ValidataErrorModel>();

            foreach (PropertyInfo prop in type.GetProperties())
            {
                if (prop.IsDefined(typeof(AbstractValidataAttribute), true))
                {
                    IEnumerable <AbstractValidataAttribute> abstractValidataAttribute = prop.GetCustomAttributes <AbstractValidataAttribute>(true) as IEnumerable <AbstractValidataAttribute>;
                    foreach (var validataAttribute in abstractValidataAttribute)
                    {
                        //validataErrorModels.Add(validataAttribute.Validata(prop.GetValue(t)));
                        ValidataErrorModel validataErrorModel = validataAttribute.Validata(prop.GetValue(t));
                        if (validataErrorModel.IsError) //只返回错误信息
                        {
                            validataErrorModel.ErrorMsg = prop.GetDisplayName() + validataErrorModel.ErrorMsg;
                            validataErrorModels.Add(validataErrorModel);
                            //yield return validataErrorModel;
                        }
                    }
                }
            }
            return(validataErrorModels);
        }
Example #2
0
        private static ValidataErrorModel Rule(object error)
        {
            ValidataErrorModel validataErrorModel = new ValidataErrorModel()
            {
                IsError  = false,
                ErrorMsg = null
            };

            if (error is null)
            {
                validataErrorModel.IsError  = true;
                validataErrorModel.ErrorMsg = "不能为空!";
            }
            else if (error.ToString().Length < _Min)
            {
                validataErrorModel.IsError  = true;
                validataErrorModel.ErrorMsg = $"长度不能小于{_Min}个长度!";
            }
            else if (error.ToString().Length > _Max)
            {
                validataErrorModel.IsError  = true;
                validataErrorModel.ErrorMsg = $"长度不能大于{_Max}个长度!";
            }
            return(validataErrorModel);
        }
Example #3
0
        private static ValidataErrorModel Rule(object error)
        {
            ValidataErrorModel validataErrorModel = new ValidataErrorModel()
            {
                IsError  = false,
                ErrorMsg = null
            };

            if (error is null || string.IsNullOrWhiteSpace(error.ToString()))
            {
                validataErrorModel.IsError  = true;
                validataErrorModel.ErrorMsg = "不能为空或者为null!";
            }
            return(validataErrorModel);
        }
Example #4
0
        private static ValidataErrorModel Rule(object error)
        {
            ValidataErrorModel validataErrorModel = new ValidataErrorModel()
            {
                IsError  = false,
                ErrorMsg = null
            };

            if (error is null)
            {
                validataErrorModel.IsError  = true;
                validataErrorModel.ErrorMsg = "不能为空!";
            }
            else if (!Regex.IsMatch(error.ToString(), _Reg))
            {
                validataErrorModel.IsError  = true;
                validataErrorModel.ErrorMsg = "格式不正确!";
            }
            return(validataErrorModel);
        }