1.模型绑定的好处
最初的时候,类似于java web的请求参数的获取还需要request.getAttribute("name")取获取
模型绑定可以简单地将用户输入绑定到Action方法上的输入参数:
请求参数可以被绑定到请求方法上去:
我们可以指定参数的来源:
[FromBody]从请求体读取数据
[FromForm]从Form中提交的数据中提取
[FromHeader]从请求头中获取
[FromRoute]从路径中获取
[FromServices]从外部服务中获取
实例:
2.自定义模型绑定
原来是接收一个base64字符串进行表情识别,现在只需要自定义一个模型绑定器就可以实现:
获取base64并处理:
将模型加注解标注:
在控制器中直接使用绑定后的模型接收就可以了:
3.模型验证
在模型上添加注解实现模型的简单验证:
可以通过ModelState获取验证结果:
4.自定义模型验证
a 自定义模型验证注解(可重复使用)
继承ValidationAttribute,重写IsValid方法
b 在待验证类上实现IValidatableObject接口
重写Validate方法