asp.net MVC - 小鸟系列之属性验证
来源:互联网 发布:编程英语词汇大全app 编辑:程序博客网 时间:2024/05/17 06:05
.Net 4.0的 System.ComponentModel.DataAnnotations 命名空间中提供了如下所示的验证属性
StringLength: 字符串字段所允许的最大长度
Required: 必填字段
RegularExpression: 字段属性必须符合所指定的正则表达式
Range: 数字字段必须符合的范围
CustomValidation: 自定义字段验证规则
从APS.NET MVC3开始,在ASP.NET MVC组件里也新增了几个好用的验证属性,这些属性不在 System.ComponentModel.DataAnnotations 命名空间之下,而是在 System.Web.Mvc 命名空间下,请注意不要引用错命名空间
Compare: 用来对比数据模型中另一个字段是否与套用的字段一致。此属性可用在需要输入两次密码的窗体上,也就是在会员注册页面时,可能会需要输入两次相同的密码,避免使用者的输入错误
Remote: 将该字段输入值通过Ajax 送到指定的Action 做验证,通过远程验证后回传的结果,当作验证的成功与否。此属性可用在用户输入的会员账号是否已经被使用,通过远程Ajax 调用可提升窗体输入的使用性
.Net 4.5也新增了一个好用的验证属性,这些属性在System.Web.Security 命名空间下。
MembershipPasswordAttribute: 验证密码字段是否符合成员资格提供者当前的密码需求。此属性可用在密码输入字段,通过Membership 提供者所定义的密码复杂度要求进行检查
示例
1. 首先新建一个MVC项目,新建一个Model类 MemberModels.cs
namespace MVC4.MemberInfo{ public class MemberModels { [Required(ErrorMessage="Name is required")] public string Name { get; set; } [Required(ErrorMessage = "Password is required")] [MinLength(5, ErrorMessage = "Password length must be equal or greater than 5")] public string Password { get; set; } }}2. Controller Code
public ActionResult Index(){ return View();}[HttpPost]public ActionResult Index(MemberModels MemberInfo){ //true if this instance is valid; otherwise, false if (ModelState.IsValid) { return View("/Views/Home/ShowMember.cshtml"); } return View("/Views/Home/Index.cshtml");}
3. View Code
@model MVC4.MemberInfo.MemberModels@{ ViewBag.Title = "Home Page"; Layout = null;}<form action="/Home/Index" method="post"> Name:<input id="txtName" type="text" name="Name" /> @Html.ValidationMessageFor(model => model.Name) <br /><br /> Password:<input id="txtPassword" type="text" name="Password" /> @Html.ValidationMessageFor(model => model.Password) <br /><br /> <input id="btnSumbit" type="submit" value="提交"/></form>
4. 效果
- asp.net MVC - 小鸟系列之属性验证
- asp.net MVC - 小鸟系列之自定义HTML辅助方法
- ASP.net MVC 属性验证
- ASP.NET MVC 2博客系列之二:模型验证
- ASP.NET MVC 2博客系列之二:模型验证
- ASP.NET MVC 2博客系列之模型验证
- ASP.NET MVC系列之 如何实现自定义验证(服务端验证+客户端验证)
- ASP.NET MVC实体类(属性类)数据验证
- 【ASP.NET系列】之ASP.NET MVC 路由
- 【ASP.NET系列】之ASP.NET MVC 控制器
- MVC学习笔记之Asp.Net MVC 中的验证问题
- ASP.NET MVC验证 - 自定义验证规则、验证2个属性值不等【待验证】
- ASP.NET MVC 系列之 (MVC中使用Ninject)
- ASP.NET MVC中的验证
- ASP. net MVC 验证码
- asp.net MVc 数据验证
- ASP.NET MVC中的验证
- ASP.NET MVC 3.0验证
- 【杭电2018】母牛的故事
- jQuery自定义插件
- Android/Ios组件名称一览表
- Google推荐的图片加载库Glide介绍
- burpsuite中intruder标签内attack type四种类型的用法和区别
- asp.net MVC - 小鸟系列之属性验证
- 操作Visual Studio的几组快捷键
- java的设计模式——DAO(Date Access Object)133
- sql FOR XML PATH应用
- 使用IntelliJ IDEA开发SpringMVC网站(三)数据库配置
- EJS 模板快速入门
- codeforces--701A Cards
- 友善之臂tiny4412-1306开发板安卓系统烧写
- 【杭电 2504】又见GCD