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

1.[Required] : 必须输入

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
  1. [Required(ErrorMessage = "请输入用户名")]  



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

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
  1. [StringLength(10, ErrorMessage = "长度不能超过10个字符")]  


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

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
  1. [Range(0, 120, ErrorMessage = "年龄范围在0到120岁之间")]  

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

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
  1. [RegularExpression(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$", ErrorMessage = "请输入Email格式")]  
  2. public String RegualarExpressionField { getset; }  

(2)自定义特性:

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
  1. public class EmailAttribute : RegularExpressionAttribute  
  2.     {  
  3.         public EmailAttribute()  
  4.             :base(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$")  
  5.         {  
  6.         }  
  7.     }  



5.Compare 判等比较

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
  1. public string Email { getset; }  
  2.   
  3. [Compare("Email", ErrorMessage = "邮箱要相同")]  
  4. public string TEmail { getset; }  


6.Remote : Ajax远程验证,返回值是bool类型 true表示验证通过

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
  1. //   Action方法 控制器类    请求方式  
  2. [Remote("User""Validate", HttpMethod = "post", ErrorMessage = "用户名已经存在")]  
  3. public string UserName { getset; }  
  4. //....  
  5. public ActionResult User()  
  6. {  
  7. //..  
  8.   if(true)  
  9.   {  
  10.     return Json(true,JsonRequestBehavior.AllowGet);  
  11.   }  
  12.   else  
  13.     return Json(false,JsonRequestBehavior.AllowGet);  
  14.   }  

7.OutputCache 页面缓存

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
 
    1. [OutputCache(Duration=20)]//设置页面绝对缓存  缓存时间为 20秒  
    2. public ActionResult Index()  
    3. {  
    4.      //详细代码  
    5. }  
原文地址:https://www.cnblogs.com/wangyt/p/3675553.html