• 数据注解和验证

  用户输入验证在客户端浏览器中需要执行验证逻辑. 在客户端也需要执行.

  注解是一种通用机制, 可以用来向框架注入元数据, 同时, 框架不只驱动元数据的验证, 还可以在生成显示和编辑模型的 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中的数据注解和验证的更多相关文章

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

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

  2. APS.NET MVC + EF (08)---数据注解和验证

    对于Web开发人员来说,用户输入验证一直是一个挑战.不仅在客户端浏览器中需要执行验证逻辑,在服务器端也需要执行.如果觉得验证是令人望而生畏的繁杂琐事,ASP.NET MVC框架提供了数据注解的方式帮助 ...

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

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

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

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

  5. ASP.NET MVC5高级编程 之 数据注解和验证

    客户端验证逻辑会对用户向表单输入的数据给出一个即时反馈.而之所以需要服务器端验证,是因为来自网络的信息都是不能被信任的. 当在ASP.NET MVC设计模式上下文中谈论验证时,主要关注的是验证模型的值 ...

  6. MVC5 数据注解和验证

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

  7. 9.翻译系列:EF 6以及EF Core中的数据注解特性(EF 6 Code-First系列)

    原文地址:http://www.entityframeworktutorial.net/code-first/dataannotation-in-code-first.aspx EF 6 Code-F ...

  8. ASP.NET MVC中对Model进行分步验证的解决方法

    原文:ASP.NET MVC中对Model进行分步验证的解决方法 在我之前的文章:ASP.NET MVC2.0结合WF4.0实现用户多步注册流程中将一个用户的注册分成了四步,而这四个步骤都是在完善一个 ...

  9. Asp.net MVC 数据注解与验证

    数据注解特性定义在名称空间System.ComponentModel.DataAnnotations中(有些特性定义在其他名称空间中),它们提供了服务器端验证的功能,当在模型的属性上使用这些特性时,框 ...

随机推荐

  1. 常见开发需求之angular上拉加载更多

    需求   移动端使用angular实现上拉加载更多的条目,这个需求比较常见,网上的插件改动起来比较麻烦,不如自己写一个最适合,以前有同事写了一个,奈何bug太多,后来改分页了,我们产品说什么都让做,没 ...

  2. javascript将object转string字符串

    var jsonData = {a:1,b:2}; function obj2string(o) { var r = []; if (typeof o == "string") { ...

  3. Python爬虫学习(1): urllib的使用

    1.urllib.urlopen 打开一个url的方法,返回一个文件对象,然后可以进行类似文件对象的操作 In [1]: import urllibIn [2]: file = urllib.urlo ...

  4. 练练脑javascript写直接插入排序和冒泡排序

    function insertionSort(array) { if (Object.prototype.toString.call(array).slice(8, -1) === 'Array') ...

  5. HDU5730 Shell Necklace(DP + CDQ分治 + FFT)

    题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=5730 Description Perhaps the sea‘s definition of ...

  6. PDO连接数据库

    PDO连接数据库 PDO简介和配置 php.ini extension=php_pdo.dll extension=php_pdo_myysql.dll PDO连接MYSQL new PDO(&quo ...

  7. NIO的一些相关链接

    Architecture of a Highly Scalable NIO-Based Server Scalable IO in Java Tricks and Tips with NIO part ...

  8. [数据库]redis与redis操作

    网上搜了以下redis的入门操作,全TM的关于怎么安装配置和性能特点的. 基本的CRUD(Create, Read, Update, Delete)就谁也没说,简直气疯了. 先记录下自己常用的命令,后 ...

  9. Android调用默认浏览器打开指定Url

    业务员有需求要将一个wap站在手机上以App的形式打开,还不要嵌套WebView,只能以浏览器打开.查了点资料,就有了下面这货. package com.gzz.whyinzi; import and ...

  10. bzoj1468 Tree

    最经典的点分治题目,在递归子树的时候减去在算父亲时的不合法方案. #include<iostream> #include<cstdio> #include<cstring ...