ASP.NET MVC 常用内置验证特性 简介

 

0.[DisplayName("名字")]

0.[DisplayName("名字")]

 

1.[Required] : 必须输入

[Required(ErrorMessage = "请输入用户名")]  

 

2.[StringLength] : 限制字符串长度 

[StringLength(10, ErrorMessage = "长度不能超过10个字符")]  

 

3.[Range] : 限制取值范围  

1 [Range(0, 120, ErrorMessage = "年龄范围在0到120岁之间")]  

  

4.[RegularExpression] : 必须符合某个正则表达式(1)直接使用RegularExpression来写表达式:  

1 [RegularExpression(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$", ErrorMessage = "请输入Email格式")]  
2 public String RegualarExpressionField { get; set; }  

 

 

(2)自定义特性: 

1 public class EmailAttribute : RegularExpressionAttribute  
2     {  
3         public EmailAttribute()  
4             :base(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$")  
5         {  
6         }  
7     }  

 



5.Compare 判等比较 

public string Email { get; set; }  
  
[Compare("Email", ErrorMessage = "邮箱要相同")]  
public string TEmail { get; set; }  

 

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()  
{  
     //详细代码  
}  

 

8.隐藏字段

 [HiddenInput(DisplayValue=false)]
public string Name { get; set; }

 

9.多行文本

[DataType(DataType.MultilineText)]

[DataType(DataType.MultilineText)]
  public string Description { get; set; }

 

posted on 2017-05-20 10:49  烟魅  阅读(246)  评论(0编辑  收藏  举报