数据注解特性定义在名称空间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 数据注解与验证的更多相关文章

  1. asp.net mvc常用的数据注解和验证以及entity framework数据映射

    终于有时间整理一下asp.net mvc 和 entity framework 方面的素材了. 闲话少说,步入正题: 下面是model层的管理员信息表,也是大伙比较常用到的,看看下面的代码大伙应该不会 ...

  2. 【ASP.NET MVC系列】浅谈数据注解和验证

    [ASP.NET MVC系列]浅谈数据注解和验证   [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google C ...

  3. MVC中的数据注解和验证

    数据注解和验证 用户输入验证在客户端浏览器中需要执行验证逻辑. 在客户端也需要执行. 注解是一种通用机制, 可以用来向框架注入元数据, 同时, 框架不只驱动元数据的验证, 还可以在生成显示和编辑模型的 ...

  4. MVC学习手册之数据注解与验证

    MVC学习手册之数据注解与验证 新建一个MVC5的WEB应用程序,VS2013会自动生成一段代码,以下是Account控制器下Register.cshtml 页面的代码: @model WebAppl ...

  5. asp.net mvc数据验证

    文章:asp.net mvc3 的数据验证(一) 文章:ASP.NET MVC下的四种验证编程方式 这个讲了在一个地方展示验证信息 文章:[ASP.NET MVC系列]浅谈数据注解和验证 这个在每个输 ...

  6. ASP.NET MVC学习之模型验证篇

    一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们.慢慢的已经在博客园中度过一年半了,伊始只是将博客园作为自己学习的记录本一样使用,也不敢将自己的随笔发表到博客园首页,生怕自己的技艺不高,反 ...

  7. asp.net mvc中的后台验证

    asp.net mvc的验证包含后台验证和前端验证.后台验证主要通过数据注解的形式实现对model中属性的验证,其验证过程发生在model绑定的过程中.前端验证是通过结合jquery.validate ...

  8. ASP.NET MVC学习之模型验证详解

    ASP.NET MVC学习之模型验证篇 2014-05-28 11:36 by y-z-f, 6722 阅读, 13 评论, 收藏, 编辑 一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们 ...

  9. MVC5 数据注解和验证

    ①利用数据注解进行验证 ②创建自定义的验证逻辑 ③模型元数据注解的用法 ①先创建数据源 1,创建我们的Model  Order 2,创建控制器带EF 选择模型为Order 当你运行的时候会报错,需要代 ...

随机推荐

  1. iStylePDF c#集成开发示例

    iStylePDF安装包自带了ActiveX控件,下载安装包安装之后就可以使用,如果没有安装包请到360软件管家或者腾讯软件管家搜索下载.C#的Form中集成ActiveX控件还是非常简单的,选择添加 ...

  2. spring cloud资料

    https://segmentfault.com/a/1190000006216281 http://git.oschina.net/zhou666/spring-cloud-7simple zuul ...

  3. 转:使用DBUnit测试时违反外键约束的解决办法

    DBUnit是一个基于junit扩展的数据库测试框架.它提供了大量的类对与数据库相关的操作进行了抽象和封装.它会把数据库表里的数据和一个xml文件关联起来,也就是说它可以让数据在XML文件和数据库之间 ...

  4. 用C++画心(转)

    原地址https://www.zhihu.com/topic/19613730/top-answers 首先上一个动态的心 代码如下: #include <stdio.h> #includ ...

  5. JAVA08多态之课程问题解决

    课后作业一:接口多态:使用接口代替抽象基类 1.源代码: package zoo4; import java.util.Vector; public class Zoo2 { public stati ...

  6. OpenSUSE 开启SSH 和网络设置

    一.开启SSH 1.确认SSH包已安装. 2.确认防火墙没有拦截. 3.确认SSH服务已启动.4.确认SSH配置文件设置正确. 环境: SSH已安装,防火墙设置不清楚,SSH服务已启动,配置文件不清楚 ...

  7. 破解YunFile下载间隔10分钟/下载等待30秒

    [破解10分钟间隔] 可以采用断网重连等方法重新获取IP地址,就不用再等十分钟了 [破解30秒等待] 收藏一个书签,书签地址如下 javascript:var downpage_link = docu ...

  8. web前端代码编写体验

    最好是使用HTML5的有意义的标签,并尝试在不同的,老版本的浏览器中也保持一致,不然你会发现,满屏都是div,后期进行代码验证,修改和查找简直是一场大灾难. 而且,编写代码的时候,为了方便以后代码的复 ...

  9. C++中的const和指针组合

    在C++里,const修饰指针有以下三种情况 (1)指针常量:即指向常量的指针 const  int *p或者int const *p const在*前,,可以这样理解它的功能,因为const在*前, ...

  10. java中使用poi导入导出excel文件_并自定义日期格式

    Apache POI项目的使命是创造和保持java API操纵各种文件格式基于Office Open XML标准(OOXML)和微软的OLE复合文档格式(OLE2)2.总之,你可以读写Excel文件使 ...