ASP.NET MVC 常用内置验证特性 简介
1.[Required] : 必须输入
[Required(ErrorMessage = "请输入用户名")]
2.[StringLength] : 限制字符串长度
[StringLength(10, ErrorMessage = "长度不能超过10个字符")]
3.[Range] : 限制取值范围
[Range(0, 120, ErrorMessage = "年龄范围在0到120岁之间")]
4.[RegularExpression] : 必须符合某个正则表达式(1)直接使用RegularExpression来写表达式:
01.[RegularExpression(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$", ErrorMessage = "请输入Email格式")] 02.public String RegualarExpressionField { get; set; }
(2)自定义特性:
public class EmailAttribute : RegularExpressionAttribute { public EmailAttribute() :base(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$") { } }
5.Compare 判等比较
public class EmailAttribute : RegularExpressionAttribute { public EmailAttribute() :base(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$") { } }
6.Remote : Ajax远程验证,返回值是bool类型 true表示验证通过
// Action方法 控制器类 请求方式 [Remote("User", "Validate", HttpMethod = "post", ErrorMessage = "用户名已经存在")] public string UserName { get; set; } //.... public ActionResult User() { //.. if(true) { return Json(true,JsonRequestBehavior.AllowGet); } else return Json(false,JsonRequestBehavior.AllowGet); }
7.OutputCache 页面缓存
[OutputCache(Duration=20)]//设置页面绝对缓存 缓存时间为 20秒 public ActionResult Index() { //详细代码 }