C# MVC Model验证总结 【Model验证胜过js验证,看过恍然大悟】
以前总觉得js Jquery验证很神奇,用过Jquery的Validate验证,EasyUi的控件验证。Models验证为我们提供了类似于Jquery的远程验证特性。如今觉得眼下的Model验证规则跟js验证比起来,不仅强大,安全,而且提高了性能,毕竟js在页面访问时还要加载。如果说的不对的对方,请打什么指点。好了不说了,进入正题。
第一步 在MVC web下的Model目录下添加需要验证的类
1 用户验证 譬如当一个用户在注册用户名时,需要验证(1)用户输入框不能为空(2) 输入的用户名是否被注册过(3) 用户输入的字段是不是太短或者太长 等等都需要验证
[Required(ErrorMessage = "账号不能为空")]
[StringLength(15, MinimumLength = 3, ErrorMessage = "用户名不能大于{2} 且要小于{1}")]
[Remote("StudentValidate", "Student", HttpMethod = "post", ErrorMessage = "用户名已经存在")]
public string Name { get; set; }
2 手机验证
[Required(ErrorMessage = "必填")]
[Display(Name = "手机号")]
[RegularExpression(@"^1[3458][0-9]{9}$", ErrorMessage = "手机号格式不正确")]
public string Phone { get; set; }
3 邮箱验证
[Required(AllowEmptyStrings = false, ErrorMessage = "邮箱必填")]
[RegularExpression(@"[A-Za-z0-9._%+-]+@[A-Za-z0-9]+\.[A-Za-z]{2,4}", ErrorMessage = "{0}的格式不正确")]
public string Email { get; set; }
等等将验证规则添加验证字段上
第二步 在页面中添加Models 下类的引用,如果这个加错了,页面字段是找不到验证规则的
第三步 演示效果
最后 如果你还要验证其他的字段 就在类的字段上直接加,看过如果对你有帮助请大家多多留言。