国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Model驗證功能

2019-11-14 16:10:17
字體:
來源:轉載
供稿:網友

占位符

 {0}對應屬性
 {1}對應minimum
 {2}對應maximum
 
[StringLength(15, MinimumLength = 6, ErrorMessage = "密碼長度必須在{2}和{1}之間")]
 
先創建一個資源文件
 
為了實現這種驗證效果
 
資源文件里可以這樣寫
 
然后新建一個類,這個類主要實現驗證和其它一些額外的屬性,這個類是部分類,有加partial關鍵字,寫注解別忘了加
System.ComponentModel.DataAnnotations命名空間
 
[MetadataType(typeof(Login_UserMetaData))]    public partial class Login_User    {        //驗證需要用到        public class Login_UserMetaData        {            [Display(Name="用戶名")]            [Required(ErrorMessageResourceName="Required",ErrorMessageResourceType=typeof(Resource))]            public string UserName { get; set; }            [Display(Name="密碼")]            [Required(ErrorMessageResourceName = "Required", ErrorMessageResourceType = typeof(Resource))]            public string PassWord { get; set; }        }    }

 

然后控制器大概就需要這樣的代碼,記得action方法傳進來的參數類型是類名,如果用string username這種形式,ModelState.IsValid將無效

[HttpPost]        public ActionResult Login(Login_User loginUser)        {            if (!ModelState.IsValid)            {//驗證不通過返回                return View();            }            Login_User user=userManager.Login(loginUser.UserName, loginUser.Password);            if (user == null)            {//用戶密碼錯誤!                ViewBag.error = "用戶名或密碼錯誤!";                return View();            }            session["user"] = user;            return RedirectToAction("index", "home");        }

 

這樣做了之后,就可以實現服務端驗證了,但這樣還不夠,這里還需要使用客戶端驗證,這可以大大減輕服務器負擔。
view中的代碼如下:
@{    ViewBag.Title = "后臺登陸";}@model Letter.Data.Model.Login_User<script src="~/Scripts/jquery.validate.min.js"></script><script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>@using(Html.BeginForm()){    <div>          <label for="username">用戶名:</label>          @Html.TextBoxFor(u=>u.UserName) @Html.ValidationMessage("UserName")      </div>      <div>          <label for="password">密碼:</label>          @Html.PasswordFor(u=>u.Password) @Html.ValidationMessage("Password")    </div>    <div>        <input type="submit" value="登錄" />@ViewBag.error    </div>}

web.config應該有如下配置才有效

 

附上一個比較完整的驗證

另一個部分user類,包含確認密碼

 

資源文件如下

效果如下


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 本溪| 鱼台县| 长治县| 美姑县| 阿克| 文登市| 米易县| 顺义区| 麻城市| 东源县| 泰兴市| 抚顺市| 交城县| 卓尼县| 崇州市| 三明市| 黄石市| 仁怀市| 吴桥县| 盐津县| 甘南县| 贞丰县| 黎城县| 南皮县| 通州区| 定边县| 昌平区| 南充市| 和政县| 北流市| 梁山县| 锡林浩特市| 吉林省| 万全县| 白山市| 定陶县| 万盛区| 偏关县| 邹平县| 绵竹市| 五华县|