参数模型验证 一般是对传入的参数按照制定规则校验,该章节主要演示在服务端对传入参数进行校验
校验主要包括3点:
1,定义验证规则
2,按照规则进行检查
3,错误报告
1,定义验证规则
这里介绍3中验证方式:
方式一:使用 Data Annotations程序集,通过属性注解方式,例如 [Required]、[MaxLength] 等
方式二:自定义属性 Attribute 验证
方式三:使用 FluentValidation 方式验证 (推荐)
方式一 和 方式二 都要引入下边的程序集:
引入程序集:System.ComponentModel.Annotations 项目没有的需要安装一下该程序包
方式一:属性注解验证
优点:简单
缺点:只能作用在属性上、存在代码侵入、校验方式简单、验证只能在Controller的Action中使用,不支持非Controller中或者控制台程序的验证
1 public class ProductsDto
2 {
3 [Display(Name = "商品编号")]
4 [Required(ErrorMessage = "{0}是必填项")]
5 [StringLength(maximumLength: 10, MinimumLength = 5, ErrorMessage = "{0}的长度范围是{2}到{1}")]
6 public string ProductCode { get; set; }
7
8 [Display(Name = "商品名称")]
9 [Required(ErrorMessage = "{0}是必填项")]
10 [MinLength(1, ErrorMessage = "{0}的最小长度是1")]
11 public string ProductName { get; set; }
12
13 [Display(Name = "商品价格")]
14 [Required(ErrorMessage