public static ValidatorContainer <T> NotNullOrEmpty <T>(this ValidatorContainer <T> container, bool stopWhileFail) { if (container == null) { return(null); } if (container.ValidatorObject == null || string.IsNullOrEmpty(container.ValidatorObject.ToString().Trim())) { string errorMessage = string.Format("请填写 {0}!", container.ValueName); //container.ErrorList.Add(errorMessage); container.AddError(errorMessage); if (stopWhileFail) { return(null); } } return(container); }
/// <summary> /// 检测是否有危险的可能用于链接的字符串 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="container"></param> /// <param name="stopWhileFail"></param> /// <returns></returns> public static ValidatorContainer <T> IsSafeUserInfoString <T>(this ValidatorContainer <T> container, bool stopWhileFail) { if (container == null) { return(null); } Regex emailExpression = new Regex(@"^\s*$|^c:\\con\\con$|[%,\*" + "\"" + @"\s\t\<\>\&]|游客|管理员|^Guest|admin", RegexOptions.Compiled | RegexOptions.Singleline | RegexOptions.IgnoreCase); if (emailExpression.IsMatch((container.ValidatorObject.ToString()))) { string errorMessage = string.Format("{0}中存在非法字符!", container.ValueName); container.AddError(errorMessage); if (stopWhileFail) { return(null); } } return(container); }
/// <summary> /// 检测是否有Sql危险字符 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="container"></param> /// <param name="stopWhileFail"></param> /// <returns></returns> public static ValidatorContainer <T> IsSafeSqlString <T>(this ValidatorContainer <T> container, bool stopWhileFail) { if (container == null) { return(null); } Regex emailExpression = new Regex(@"[-|;|,|\/|\(|\)|\[|\]|\}|\{|%|@|\*|!|\']", RegexOptions.Compiled | RegexOptions.Singleline | RegexOptions.IgnoreCase); if (emailExpression.IsMatch((container.ValidatorObject.ToString()))) { string errorMessage = string.Format("{0}中存在非法字符!", container.ValueName); container.AddError(errorMessage); if (stopWhileFail) { return(null); } } return(container); }
public static ValidatorContainer <T> Regex <T>(this ValidatorContainer <T> container, string expression, string failMessageFormat, bool stopWhileFail) { if (container == null) { return(null); } Regex emailExpression = new Regex(expression, RegexOptions.Compiled | RegexOptions.Singleline | RegexOptions.IgnoreCase); if (!emailExpression.IsMatch((container.ValidatorObject.ToString()))) { string errorMessage = string.Format(failMessageFormat, container.ValueName); container.AddError(errorMessage); if (stopWhileFail) { return(null); } } return(container); }
public static ValidatorContainer <T> IsNumber <T>(this ValidatorContainer <T> container, float?min, float?max, bool stopWhileFail) { if (container == null) { return(null); } min = min ?? float.MinValue; max = max ?? float.MaxValue; float tryFloat; if (!float.TryParse(container.ValidatorObject.ToString(), out tryFloat) || tryFloat < (float)min || tryFloat > (float)max) { string errorMessage = string.Format("请输入正确的{0}", container.ValueName); container.AddError(errorMessage); if (stopWhileFail) { return(null); } } return(container); }
public static ValidatorContainer <T> Exclude <T>(this ValidatorContainer <T> container, string[] excludeStrings, bool stopWhileFail) { if (container == null) { return(null); } foreach (var str in excludeStrings) { if (container.ValidatorObject.ToString().Contains(str)) { string charts = string.Join(",", excludeStrings).Replace(" ", "空格").Replace(" ", "全角空格"); string errorMessage = string.Format("{0}中包含了不允许使用的特殊字符:{1}", container.ValueName, str); container.AddError(errorMessage); if (stopWhileFail) { return(null); } } return(container); } return(container); }