MVC中的数据注解和验证
- 数据注解和验证
用户输入验证在客户端浏览器中需要执行验证逻辑. 在客户端也需要执行.
注解是一种通用机制, 可以用来向框架注入元数据, 同时, 框架不只驱动元数据的验证, 还可以在生成显示和编辑模型的 HTML 标记时使用元数据.
- 为验证注解订单
应用程序使用 HTML 辅助方法 EditorForModel 来构建结算页面. EditorForModel 辅助方法为模型对象的每个属性构建一个编辑器, 生成表单.
- 验证注解的使用
数据注解特性定义在名称空间 System.ComponentModel.DataAnnotations 中(有些例外). 他们提供了服务器端验证的功能, 当在模型的属性上使用这些特性时, 框架也支持客户端验证. 在名称空间 DataAnnotations 中, 有4个特性可以用来应付一般的验证场合:
[Required]
[StringLength]
[RegularExpression]
[Range]
System.Web.Mvc 中额外添加了两个验证特性:
Remote 特性
Compare 特性
- 自定义错误提示消息及其本地化
- 注解的后台原理
- 控制器操作和验证错误
- 自定义验证逻辑
- 自定义注解
- IValidatableObject
一个模型对象可以通过实现 IValidatableObject 接口来实现对自身的验证.
- 显示和编辑注解
- Display
Display 特性可为模型属性设置友好的"显示名称".
- ScaffoldColumn
ScaffoldColumn 特性可以隐藏 HTML 辅助方法渲染的一些特性.
- DisplayFormat
通过命名参数, DisplayFormat 特性可以用来处理属性的各种格式化选项.
- ReadOnly
如果需要确保默认的模型绑定器不使用请求中的新值来更新属性, 可在属性上添加 ReadOnly 特性.
- DataType
DataType 特性可为运行时提供关于属性的特定用途信息.
- UIHint
UiHint 特性给 ASP.NET MVC 运行时提供了一个模板名称, 以备调用模板辅助方法渲染输出时使用.
- HiddenInput
HiddenInput 在名称空间 System.Web.Mvc 中, 它可以告知运行时渲染一个 type 特性值为"hidden"的输入元素.
MVC中的数据注解和验证的更多相关文章
- asp.net mvc常用的数据注解和验证以及entity framework数据映射
终于有时间整理一下asp.net mvc 和 entity framework 方面的素材了. 闲话少说,步入正题: 下面是model层的管理员信息表,也是大伙比较常用到的,看看下面的代码大伙应该不会 ...
- APS.NET MVC + EF (08)---数据注解和验证
对于Web开发人员来说,用户输入验证一直是一个挑战.不仅在客户端浏览器中需要执行验证逻辑,在服务器端也需要执行.如果觉得验证是令人望而生畏的繁杂琐事,ASP.NET MVC框架提供了数据注解的方式帮助 ...
- 【ASP.NET MVC系列】浅谈数据注解和验证
[ASP.NET MVC系列]浅谈数据注解和验证 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google C ...
- MVC学习手册之数据注解与验证
MVC学习手册之数据注解与验证 新建一个MVC5的WEB应用程序,VS2013会自动生成一段代码,以下是Account控制器下Register.cshtml 页面的代码: @model WebAppl ...
- ASP.NET MVC5高级编程 之 数据注解和验证
客户端验证逻辑会对用户向表单输入的数据给出一个即时反馈.而之所以需要服务器端验证,是因为来自网络的信息都是不能被信任的. 当在ASP.NET MVC设计模式上下文中谈论验证时,主要关注的是验证模型的值 ...
- MVC5 数据注解和验证
①利用数据注解进行验证 ②创建自定义的验证逻辑 ③模型元数据注解的用法 ①先创建数据源 1,创建我们的Model Order 2,创建控制器带EF 选择模型为Order 当你运行的时候会报错,需要代 ...
- 9.翻译系列:EF 6以及EF Core中的数据注解特性(EF 6 Code-First系列)
原文地址:http://www.entityframeworktutorial.net/code-first/dataannotation-in-code-first.aspx EF 6 Code-F ...
- ASP.NET MVC中对Model进行分步验证的解决方法
原文:ASP.NET MVC中对Model进行分步验证的解决方法 在我之前的文章:ASP.NET MVC2.0结合WF4.0实现用户多步注册流程中将一个用户的注册分成了四步,而这四个步骤都是在完善一个 ...
- Asp.net MVC 数据注解与验证
数据注解特性定义在名称空间System.ComponentModel.DataAnnotations中(有些特性定义在其他名称空间中),它们提供了服务器端验证的功能,当在模型的属性上使用这些特性时,框 ...
随机推荐
- Oracle的优化器介绍
Oracle优化器介绍 本文讲述了Oracle优化器的概念.工作原理和使用方法,兼顾了Oracle8i.9i以及最新的10g三个版本.理解本文将有助于您更好的更有效的进行SQL优化工作. RBO优化器 ...
- 使用Python解析JSON数据的基本方法
这篇文章主要介绍了使用Python解析JSON数据的基本方法,是Python入门学习中的基础知识,需要的朋友可以参考下: ----------------------------------- ...
- python 线程之 threading(二)
在http://www.cnblogs.com/someoneHan/p/6204640.html 线程一中对threading线程的开启调用做了简单的介绍 1 在线程开始之后,线程开始独立的运行直到 ...
- SQL注入处理
/// <summary> /// SQL注入处理 /// </summary> /// <param name="rowFilter">< ...
- amd和CMD
AMD(Modules/Asynchronous-Definition).CMD(Common Module Definition)规范区别? Asynchronous Module Definiti ...
- RUDP之三 —— Virtual Connection over UDP
原文链接 原文:http://gafferongames.com/networking-for-game-programmers/virtual-connection-over-udp/ Introd ...
- HDU3333 Turing Tree(线段树)
题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=3333 Description After inventing Turing Tree, 3x ...
- sublime中让成对括号高亮显示的设置步骤
1.首先安装package controlPackage Control 安装方法 首先通过快捷键 ctrl+` 或者 View > Show Console 打开控制台,然后粘贴相应的 Pyt ...
- SqlBluckCopy 保存大数据
DataTable dt = new DataTable(); dt.Columns.Add("UserName", typeof(string)); dt.Columns.Add ...
- javascript压缩工具
Google Closure Compiler : http://code.google.com/closure/compiler/ YUI Compressor : http://developer ...