MVC model验证
来源:互联网 发布:mac版百度网盘模糊 编辑:程序博客网 时间:2024/06/15 21:52
model验证是写注册判断用户输入是否符合规则
有些有用但是我这里没用的我打了备注,慢慢看代码。
model代码,这里就是验证的地方
public class UserInfo { [Required(ErrorMessage="用户名必填")] [MinLength(6,ErrorMessage="用户名必须大于6位啊")] [MaxLength(10,ErrorMessage="用户名不能小于10位")] public string username { get; set; } [Required(ErrorMessage="密码必须填")] [MinLength(6,ErrorMessage="密码必须大于6位")] [MaxLength(18,ErrorMessage="密码必须小于18位")] public string password { get; set; } [Compare("password",ErrorMessage="两次密码不正确")] public string repassword { get; set; } //int不能使用[MinLength]和[MaxLength] [AgeValidation(ErrorMessage="未成年不能注册")] public int age { get; set; } [WorkdtValidation(ErrorMessage="入职日期必须小于当前日期")] public DateTime workdt { get; set; } }int不能用Minlength和Maxlength
要额外写验证
这是判断未成年人的
public class AgeValidation : ValidationAttribute//双击Vali自动写入using { /// <summary> /// 自定义实现年龄必须大于18岁 /// </summary> /// <param name="value"></param> /// <returns></returns> public override bool IsValid(object value) { int age = Convert.ToInt32(value); if (age >= 18) return true; else return false; } }
上班时间:
public class WorkdtValidation : ValidationAttribute//双击Vali自动写入using { public override bool IsValid(object value) { if (value == null) return false; DateTime dt=(DateTime)value; if (dt>DateTime.Now) { return false; } return true; } }
图解:写在那里
控制器代码
using MVC_Model.Models;using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.Mvc;namespace MVC_Model.Controllers{ public class HomeController : Controller { // // GET: /Home/ public ActionResult Index() { return View(); } public ActionResult Add(UserInfo ui) { if (ModelState.IsValid)//模型(Model)验证全部通过 { //写添加到数据库代码 } return View("~/views/home/index.cshtml"); } }}
视图代码
@*关联*1*@@model MVC_Model.Models.UserInfo@*显示提示文字*@@*@Html.ValidationSummary();*@@using (Html.BeginForm("Add", "home")){ <div> 用户名: @* @Html.TextBoxFor(a=>a.username)*@@*两种方法都可以,第一种要关联*1,第二种写提示信息很麻烦*@ @Html.TextBox("username") @Html.ValidationMessageFor(a => a.username) </div> <br /> <div> 密码: @Html.TextBoxFor(a => a.password) @Html.ValidationMessageFor(a => a.password) @* @Html.TextBox("password")*@ </div> <br /> <div> 重复密码: @Html.TextBoxFor(a => a.repassword) @Html.ValidationMessageFor(a => a.repassword) @*@Html.TextBox("repassword")*@ </div> <br /> <div> 年龄: @Html.TextBoxFor(a => a.age) @Html.ValidationMessageFor(a => a.age) @*@Html.TextBox("age")*@ </div> <br /> <div> 入职时间: @Html.TextBoxFor(a=>a.workdt) @Html.ValidationMessageFor(a=>a.workdt) </div> <br /> <div> <input type="submit" value="提交" /> </div>}
效果图:
有些细节还没有写出来,见谅
还有一种是写在前台的,我就不写了,我感觉没多大用。
有不足的地方希望见谅,有错误的地方欢迎批评,谢谢
阅读全文
0 0
- MVC 3.0 (Model 验证)
- MVC 3.0 验证Model
- MVC model验证
- mvc model数据验证
- .net mvc Model 验证总结
- asp.net + MVC中model验证
- ASP.NET MVC Model 验证总结
- ASP.NET MVC Model验证(一)
- ASP.NET MVC Model验证(二)
- MVC 3 数据验证 Model Validation 详解
- ASP.NET MVC Model验证(三)
- ASP.NET MVC Model验证(四)
- ASP.NET MVC Model验证(五)
- MVC 3 数据验证 Model Validation 详解
- ASP.NET MVC Model验证总结
- MVC中如何使用Model验证
- MVC 3 数据验证 Model Validation 详解
- 向MVC的Model中添加验证
- HTTP 1.1 400 Bad Request 11ms
- spring和springMVC
- 后端只要逻辑不管体验
- servlet监听器
- the host name "linux-xxxx" is invalid
- MVC model验证
- spring的理解与学习(一)
- 带你清晰认识,Linux内核启动及根文件系统加载过程,快来涨姿势!
- tensorflow-02
- MarkDown 笔记
- Hadoop之旅(4)— MapReduce 与 YARN 原理讲解
- HTML5 3 音频
- C#179课的主要内容
- 分享自己的几点