MVC的Model层验证(非空,手机号验证)
生活随笔
收集整理的這篇文章主要介紹了
MVC的Model层验证(非空,手机号验证)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在用MVC做項目的時候,我們常常需要做用戶登錄注冊的一些提示,比如手機號格式不正確,郵箱不正確,用戶名不能為空等。今天先總結下在MVC的Model層中實現注冊的驗證。若有問題,歡迎大家指出。
第一步:添加引用
添加的引用為: System.ComponentModel.DataAnnotations;
一般輸入dataa就出來了
在添加完引用之后呢,就可以往Model里面添加你想要添加的驗證了
首先在Model層添加StudentViewModel類
然后添加引用
using System.ComponentModel.DataAnnotations;
在上面的
[Display(Name =“xxx”)] 是用來標明字段是什么;
[Required(ErrorMessage =“xxx不能為空”)] 非空驗證;
[RegularExpression(“正則表達式”,ErrorMessage =“提示信息”)] 用來規范你想要的格式 如:手機號,郵箱等;
這樣呢Model層已經完成了(可能有些亂哈);
接下來添加一個控制器
接下來添加AddStudent視圖:
點擊運行后,非空驗證,手機號驗證就完成啦(#.#)
不知道你們學會了沒呀,大家一起加油呀
下面是些正則表達式:
驗證數字:^[0-9]*$ 驗證n位的數字:^\d{n}$ 驗證至少n位數字:^\d{n,}$ 驗證m-n位的數字:^\d{m,n}$ 驗證零和非零開頭的數字:^(0|[1-9][0-9]*)$ 驗證有兩位小數的正實數:^[0-9]+(.[0-9]{2})?$ 驗證有1-3位小數的正實數:^[0-9]+(.[0-9]{1,3})?$ 驗證整數和一位小數:^[0-9]+(.[1-9]{1})?$ 驗證非零的正整數:^\+?[1-9][0-9]*$ 驗證非零的負整數:^\-[1-9][0-9]*$ 驗證非負整數(正整數 + 0) ^\d+$ 驗證非正整數(負整數 + 0) ^((-\d+)|(0+))$ 驗證長度為3的字符:^.{3}$ 驗證由26個英文字母組成的字符串:^[A-Za-z]+$ 驗證由26個大寫英文字母組成的字符串:^[A-Z]+$ 驗證由26個小寫英文字母組成的字符串:^[a-z]+$ 驗證由數字和26個英文字母組成的字符串:^[A-Za-z0-9]+$ 驗證由數字、26個英文字母或者下劃線組成的字符串:^\w+$ 驗證用戶密碼:^[a-zA-Z]\w{5,17}$ 正確格式為:以字母開頭,長度在6-18之間,只能包含字符、數字和下劃線。 驗證是否含有 ^%&',;=?$\" 等字符:[^%&',;=?$\x22]+ 驗證漢字:^[\u4e00-\u9fa5]+$ 驗證Email地址:^(\w)+(\.\w+)*@(\w)+((\.\w{2,3}){1,3})$ 驗證InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$ 驗證電話號碼:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:--正確格式為:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。 驗證身份證號(15位或18位數字):^\d{15}|\d{18}|\d{17}X$ 驗證一年的12個月:^(0?[1-9]|1[0-2])$ 正確格式為:“01”-“09”和“1”“12” 驗證一個月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正確格式為:01、09和1、31。 整數:^-?\d+$ 非負浮點數(正浮點數 + 0):^\d+(\.\d+)?$ 正浮點數 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ 非正浮點數(負浮點數 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 負浮點數 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$ 浮點數 ^(-?\d+)(\.\d+)? 0-100之間的數,小數點后面最多兩位^(?:(?!0\d)\d{1,2}(?:\.\d{1,2})?|100(?:\.0{1,2})?)總結
以上是生活随笔為你收集整理的MVC的Model层验证(非空,手机号验证)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 4个顶级的华为/小米/OPPO/Vivo
- 下一篇: HTML5定稿了,为什么原生App世界将