Mvc_model实体数据验证

MVC提供了很方便的数据验证,只需要在model里加入相关的正则等,那么就会在前台里生成相关的验证脚本。需要引用两个js文件:

jquery.validate.min.js

jquery.validate.unobtrusive.min.js

[Display(Name = "转入金额")]
        [Required(AllowEmptyStrings = false, ErrorMessage = "请输入转账金额")]
        [Range(100, 20000, ErrorMessage = "输入的金额只能在100元到2万元之间")]
        [RegularExpression(@"^[1-9]\d*$", ErrorMessage = "转入的金额必须为整数")]
        public decimal Amount { get; set; }
        /// <summary>
        /// 交易密码
        /// </summary>
        [Display(Name = "交易密码")]
        [StringLength(20, MinimumLength = 6, ErrorMessage = "{0}的长度在{2}至{1}个字符间")]
        [Required(AllowEmptyStrings = false, ErrorMessage = "请输入交易密码")]
        [DataType(DataType.Password)]
        public string TradingPassword { get; set; }

    [StringLength(10, MinimumLength = 4, ErrorMessage = "{0}的长度必须大于{2}个字符并小于{1}个字符")]
    [Display(Name = "密码")]
    public virtual string LogPassword { get; set; }

    [StringLength(10, ErrorMessage = "{0}的长度不能大于{1}个字符")]
    [Display(Name = "姓名")]
    public virtual string RealName { get; set; }

    [Display(Name = "出生日期")]
    //[Range(typeof(DateTime), "2011-12-31", "1950-1-1", ErrorMessage = "{0}的范围是{1}到{2}")]
    public virtual DateTime Birthday { get; set; }

    [RegularExpression(@"\d{17}[\d|X]|\d{15}", ErrorMessage = "{0}的格式不正确")]
    [Display(Name = "身份证号码")]
    public virtual string IdentityNo { get; set; }

    [RegularExpression(@"[A-Za-z0-9._%+-][email protected][A-Za-z0-9.-]+\.[A-Za-z]{2,4}", ErrorMessage = "{0}的格式不正确")]
    [Display(Name = "邮箱")]
    public virtual string Email { get; set; }

        [Required(ErrorMessage = "注册人邮箱不能为空")]
        [RegularExpression(@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$", ErrorMessage = "邮箱不正确")]
        public string Email { get; set; }
时间: 2024-10-12 17:21:40

Mvc_model实体数据验证的相关文章

.net 手写实现一个简单实体数据验证

源于一次面试中的面试题,代码如下所示: public class Product { public string Name { get; set; } public string Description { get; set; } public void Validate1() { if (string.IsNullOrEmpty(this.Name)) { throw new Exception("请输入名称"); } if (string.IsNullOrEmpty(this.De

数据验证框架 Apache BVal 简介

Apache BVal (源码)是实体数据验证 Java Bean Validation 的参考实现.Apache BVal 提供了 JSR 303 规范中所有内置 constraint 的实现,用于对 Bean 中的字段的值进行约束定义.描述和验证.若说 JSR 规范大渣可能还不清楚,但做过 POJO 的 Hibernate Validator 注解的朋友就知道是啥,--那为什么不使用主流的 Hibernate Validator 呢?因为单纯一个压缩包都已经 13mb 了(尽管可以有文档.源

mvc EF 数据保存时,报错:”对一个或多个实体的验证失败……“之解决

在EF5.0添加实体数据到数据库的时候,出现“对一个或多个实体的验证失败.有关详细信息,请参见“EntityValidationErrors”属性这个错误 解决: SaveChanges前先关闭验证实体有效性(ValidateOnSaveEnabled)这个开关 db.Configuration.ValidateOnSaveEnabled = false; int count = db.SaveChanges(); db.Configuration.ValidateOnSaveEnabled =

MVC 3 数据验证 Model Validation 详解

续我们前面所说的知识点进行下一个知识点的分析,这一次我们来说明一下数据验证.其实这是个很容易理解并掌握的地方,但是这会浪费大家狠多的时间,所以我来总结整理一下,节约一下大家宝贵的时间. 在MVC 3中 数据验证,已经应用的非常普遍,我们在web form时代需要在View端通过js来验证每个需要验证的控件值,并且这种验证的可用性很低.但是来到了MVC 新时代,我们可以通过MVC提供的数据验证Attribute来进行我们的数据验证.并且MVC 提供了客户端和服务器端 双层的验证,只有我们禁用了客户

MVC4 数据验证、特性、自动属性总结

最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精    最近在做自学MVC,遇到的问题很多,索性一点点总结下. MVC4数据验证: 本例以程序为例就行说明: public class MyModel { [Required(ErrorMessage = "请输入收件人姓名")] public string Uname { get; set; } [Required(ErrorMessage =

(转)MVC 3 数据验证 Model Validation 详解

继续我们前面所说的知识点进行下一个知识点的分析,这一次我们来说明一下数据验证.其实这是个很容易理解并掌握的地方,但是这会浪费大家狠多的时间,所以我来总结整理一下,节约一下大家宝贵的时间. 在MVC 3中 数据验证,已经应用的非常普遍,我们在web form时代需要在View端通过js来验证每个需要验证的控件值,并且这种验证的可用性很低.但是来到了MVC 新时代,我们可以通过MVC提供的数据验证Attribute来进行我们的数据验证.并且MVC 提供了客户端和服务器端 双层的验证,只有我们禁用了客

SpringMVC学习笔记七:SpringMVC的数据验证

SpringMVC支持JSR(Java Specification Requests, Java规范提案)303-Bean Validation数据验证规范,该规范的实现者很多,其中较常用的是 Hibernate Validator 需要加入的包pom.xml <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-validator --> <dependency> <groupId>org.hi

应用程序框架实战十五:DDD分层架构之领域实体(验证篇)

在应用程序框架实战十四:DDD分层架构之领域实体(基础篇)一文中,我介绍了领域实体的基础,包括标识.相等性比较.输出实体状态等.本文将介绍领域实体的一个核心内容——验证,它是应用程序健壮性的基石.为了完成领域实体的验证,我们在前面已经准备好了验证公共操作类和异常公共操作类. .Net提供的DataAnnotations验证方法非常强大,Mvc会自动将DataAnnotations特性转换为客户端Js验证,从而提升了用户体验.但是客户端验证是靠不住的,因为很容易绕开界面向服务端提交数据,所以服务端

struts2(三)---struts2中的服务端数据验证框架validate

struts2为我们提供了一个很好的数据验证框架–validate,该框架可以很方便的实现服务端的数据验证. ActionSupport类提供了一个validate()方法,当我们需要在某一个action中进行数据验证时,可以重写这个方法.数据验证往往是在客户端向服务端提交表单信息时进行的,比如execute方法负责处理表单信息并返回相应的结果,在此之前,validate会先对提交的表单信息进行验证: ->验证通过:会执行execute的相应操作. ->验证失败: –>定义了失败后的re