Asp.net MVC 数据注解与验证
数据注解特性定义在名称空间System.ComponentModel.DataAnnotations中(有些特性定义在其他名称空间中),它们提供了服务器端验证的功能,当在模型的属性上使用这些特性时,框架也支持客户端验证。
常用特性
1、Required --必填字段
示例:[Required]
2、StringLength --字符长度限制
示例:[StringLength(16,MinimumLength=3)]
3、RegularExpression --正则表达式验证
示例:[RegularExpression(@"")]
4、Range --指定数值类型值的最小值和最大值
示例:[Range(typeof(decimal),"0.00","99.99")]
System.Web.Mvc下的验证特性
5、Remote特性 --唯一值验证(比如:身份证号/驾驶证号等)
示例:[Remote("ControllerName","ActionName")]
6、Compare --确保模型对象的两个属性拥有相同的值(比如,设置密码,确认密码)
示例:[Compare("")]
7、Display --在视图上显示友好的“名称”
示例:[Display(Name="",Order=3)]
Order用于控制属性在视图上的显示次序
8、ScaffoldColumn
EditorForModel和DisplayForModel辅助方法将不再为属性显示输入元素和label标签。
示例:[ScaffoldColumn(false)]
注意事项:如果模型绑定器在请求中看到匹配的值,那么仍然会为UserName属性赋值。
9、DisplayFormat
可以用来处理属性的各种格式化选项。
示例:[DisplayFormat(ApplyFormatInEditMode=true,DataFormatString="{0:c}")]
10、ReadOnly
确保默认的模型绑定器不使用请求中的新值更新指定属性
示例:[ReadOnly(true)]
注意事项:EditorForModel辅助方法仍然会为Total属性显示一个可用的输入元素。只有模型绑定器考虑ReadOnly特性。
11、DataType
示例:[DataType(DataType.Password)]
HTML编辑器辅助方法渲染出一个type特性值为password的输入元素,其他数据类型还有Currency、Date、Time和MultilineText
12、HiddenInput
渲染一个type特性值为hidden的输入元素
每个验证特性都允许传递一个带有自定义错误提示消息的参数
例如: [Required(ErrorMessage="")]
[StringLength(16,ErrorMessage="")]
国际化: [Required(ErrorMessageResoureType=typeof(ErrorMessages),ErrorMessageResourceName="LastNameRequired")]
[StringLength(16,ErrorMessageResoureType=typeof(ErrorMessages),ErrorMessageResourceName="LastNameTooLong")]
这里假设项目中有名为ErrorMessages.resx的资源文件,并且包含LastNameRequired和LastNameTooLong条目。 使用本地化的资源文件,需要将当前线程的UICulture属性设置为相应的语言。
Asp.net MVC 数据注解与验证的更多相关文章
- asp.net mvc常用的数据注解和验证以及entity framework数据映射
终于有时间整理一下asp.net mvc 和 entity framework 方面的素材了. 闲话少说,步入正题: 下面是model层的管理员信息表,也是大伙比较常用到的,看看下面的代码大伙应该不会 ...
- 【ASP.NET MVC系列】浅谈数据注解和验证
[ASP.NET MVC系列]浅谈数据注解和验证 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google C ...
- MVC中的数据注解和验证
数据注解和验证 用户输入验证在客户端浏览器中需要执行验证逻辑. 在客户端也需要执行. 注解是一种通用机制, 可以用来向框架注入元数据, 同时, 框架不只驱动元数据的验证, 还可以在生成显示和编辑模型的 ...
- MVC学习手册之数据注解与验证
MVC学习手册之数据注解与验证 新建一个MVC5的WEB应用程序,VS2013会自动生成一段代码,以下是Account控制器下Register.cshtml 页面的代码: @model WebAppl ...
- asp.net mvc数据验证
文章:asp.net mvc3 的数据验证(一) 文章:ASP.NET MVC下的四种验证编程方式 这个讲了在一个地方展示验证信息 文章:[ASP.NET MVC系列]浅谈数据注解和验证 这个在每个输 ...
- ASP.NET MVC学习之模型验证篇
一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们.慢慢的已经在博客园中度过一年半了,伊始只是将博客园作为自己学习的记录本一样使用,也不敢将自己的随笔发表到博客园首页,生怕自己的技艺不高,反 ...
- asp.net mvc中的后台验证
asp.net mvc的验证包含后台验证和前端验证.后台验证主要通过数据注解的形式实现对model中属性的验证,其验证过程发生在model绑定的过程中.前端验证是通过结合jquery.validate ...
- ASP.NET MVC学习之模型验证详解
ASP.NET MVC学习之模型验证篇 2014-05-28 11:36 by y-z-f, 6722 阅读, 13 评论, 收藏, 编辑 一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们 ...
- MVC5 数据注解和验证
①利用数据注解进行验证 ②创建自定义的验证逻辑 ③模型元数据注解的用法 ①先创建数据源 1,创建我们的Model Order 2,创建控制器带EF 选择模型为Order 当你运行的时候会报错,需要代 ...
随机推荐
- Mac系统下配置Maven环境变量
1.在官网下载Maven安装包,网址:https://maven.apache.org/download.cgi: 2.进入终端Terminal,验证JDK是否配置成功,输入java -version ...
- Unity3D之随心所欲的获取对象
ps 1 建立一个cube 建立一个scripts 2 scripts 赋给cube 3 在script里面直接 gameObject.SetActive (false); 就是操作当前脚本绑定 ...
- Angular 2.0 的设计方法和原则
转载自:Angular 2.0 的设计方法和原则 在开始实现Angular 2.0版本之际,我们认为应该着手写一些东西,告诉大家我们在设计上的考虑,以及为什么做这样的改变.现在把这些和大家一起分享,从 ...
- 关于C语言结构体,指针,声明的详细讲解。——Arvin
关于结构体的详细分析 只定义结构体 struct Student { int age; char* name; char sex;//结构体成员 };//(不要忘记分号) Student是结构体的名字 ...
- [SoapUI] Groovy在SoapUI里获取Text文本第一行数据
// get external txt file datadef groovyUtils =new com.eviware.soapui.support.GroovyUtils(context)def ...
- 样本、文库、重复、lane、run - 二代测序原理及名词解释
参考: 独占鳌头的Illumina仪器(二代测序篇) HiSeq2000测序原理.流程与仪器 NGS文库制备的方法比较[心得点评] 各种测序文库构建方式 样本:就是待测的DNA.RNA或蛋白序列,样本 ...
- select distinct
select distinct select distinct 用于返回表中唯一不同的值. 语法 select distinct 列名称 from 表名称 使用 distinct 关键字 Studen ...
- html标签
HTML常用标签 首先要知道html标签的一些特点: 1.类似“<关键字>”这样由尖括号包关键字组成,例如<html>,<div>…… 2.一般是成对出现的,由开始 ...
- 总结oninput、onchange与onpropertychange事件的用法和区别,onchange
前端页面开发的很多情况下都需要实时监听文本框输入,比如腾讯微博编写140字的微博时输入框hu9i动态显示还可以输入的字数.过去一般都使用onchange/onkeyup/onkeypress/onke ...
- 即时聊天IM之二 openfire 整合现有系统用户
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q Q:408365330 E-Mail:egojit@qq.com 综述: ...