模型绑定
定义
1.从各种源(路由、表单、查询字符串)中检索数据
2.将数据提供给方法参数和公共属性中的控制器
3.将字符串类型转换为.Net数据
4.更新复杂类型的属性
一般步骤
1.查找方法的第一个参数,得到它的类型和名称
2.查找HTTP的可用源,查找符合名称的数据
3.将该数据转换为该参数的类型
4.依次类推
注意:名称不区分大小写
5.调用这个方法,并将所有转换好的参数传入
6.成功绑定每个模型后,会进行模型验证
目标
模型绑定的目标:action方法的参数,Razor Page的参数,某些指定特性的属性
源
1.默认以键值对的形式从以下源中获取数据
表单
请求正文
路由数据
查询字符串
上传文件
2.路由和查询字符串只能用于简单类型
3.上传的文件仅绑定到实现 IFormFile 或 IEnumerable<IFormFile> 的目标类型
4.1中的情况是一种约定,可以指定具体从哪一个源获取数据
FromQuery
FromHeader
FromForm
FromBody
FromRoute
5.可以为参数类型起个别名
[FromQuery(Name ="text1")]string text
起别名只能用