MVC4數據注解和驗證


  在傳統的asp.net開發中,數據的驗證一直是個火熱的話題,無論是客戶端進行驗證還是服務器進行驗證,通常我們都會為了一個簡單的業務而要去寫非常復雜的驗證方法。在MVC中,MVC為我們提供了各種數據注解和數據驗證的特性,很方便的讓我們能實現數據驗證這一繁瑣的工作,以下是我整理的常見的數據注解和驗證的DOME!注:自定義驗證特性並未寫在此篇中!

 

model中的驗證注解特性:

 

public class StuInfo
    {
        public int ID { get; set;}
 
        [Display(Name = "姓名")]    //設置要顯示的字段名
        [Required(ErrorMessage = "您需要填寫{0}")]  //設置為必須字段 已經錯誤提示
        [StringLength(50, MinimumLength = 3)]     //設置最大長度和最小長度
        public string Name { get; set;}
 
        [Display(Name = "年齡")]
        [Range(1, 150, ErrorMessage = "年齡填寫不正確!")]  //設置 值范圍
        public int Age { get; set;}
 
        [Display(Name = "身高")]
        [Range(typeof(decimal),"50.00", "250.00",ErrorMessage = "身高超出指定范圍")]
        public decimal Height { get; set;}
 
        [Display(Name = "生日")]
        [DataType(DataType.Date,ErrorMessage = "{0}格式不正確")]  //設置數據類型以及錯誤提示
        public DateTime Birthday { get; set;}
 
        [Display(Name = "電話")]
        [Remote("CheckPhone","StuInfo", ErrorMessage = "{0}已被注冊")]   //在指定的Conteroller中的通道(route)中驗證數據
        public string Phone { get; set;}
 
        [Display(Name = "地址")]
        [DataType(DataType.MultilineText)]
        public string Address { get; set;}
 
        [Display(Name = "電子郵箱")]
        [RegularExpression(@"(\w)+(\.\w+)*@(\w)+((\.\w+)+)",ErrorMessage = "{0}格式不正確")]  //正則驗證
        public string Email { get; set;}
 
        [Display(Name = "再次輸入電子郵箱")]
        [Compare("Email",ErrorMessage = "{0}兩次輸入不一致")]   //設置比較兩個字段的值
        public string EmailConfirm { get; set;}
 
        [Display(Name = "密碼")]
        [DataType(DataType.Password)]
        public string Password { get; set;}
 
        [Display(Name = "備用電子郵箱")]
        [DataType(DataType.EmailAddress,ErrorMessage = "{0}格式不正確")]
        public string email_B { get; set;}
}

  遠程驗證的通道:

 public JsonResult CheckPhone(string phone)
              {
                var result= StuInfoBll.FindPhone(phone).count == 0;
                return Json(result, JsonRequestBehavior.AllowGet);
          }

  效果:
    正常下的網頁:

 

 

 

 

 

 

 

 

必須字段驗證效果:

 

值范圍、值類型驗證效果:

 

正則驗證和比較字段值效果:

 

數據類型驗證效果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM