什么是C#ASP.NET WebAPI中的参数绑定?
绑定是在WebAPI调用控制器操作方法时为参数设置值的过程。
WebAPI方法具有不同类型的参数以及如何自定义绑定过程。
如果参数是int,bool,double等简单类型,则WebAPI会尝试从URI(从路由数据或查询字符串)获取值。
如果参数是Customer,Employee等复杂类型,则WebAPI框架会尝试从请求正文中获取值。
我们可以使用[FromBody]和[FromUri]属性来更改参数绑定过程的默认行为。
FromUri-
如果参数是简单类型,则WebApi尝试从URI中获取值
.NET原始类型,例如double,DateTime,GUID字符串,可以从String类型转换为任何类型
示例
public Student Get(int id){}发件人
如果参数类型为Complex类型,则WebApi将尝试绑定消息正文中的值。
示例
Public Student Post(Employee employee){}[FromUri]
要强制WebAPI从URI读取复杂类型,请将[FromUri]属性添加到参数
使用[FromUri]属性强制WebApi从QueryString获取复杂类型的值。
示例
public Student Get([FromUri] Employee employee)
public HttpResponseMessage Get([FromUri] Employee employee) { ... }[发件人]
使用[FromBody]属性从请求正文中获取基本类型的值,与默认值相反
不可以,单个操作不允许使用多个FormBody。
要强制WebAPI从请求正文中读取简单类型,请添加[FromBody]
在此示例中,WebAPI将使用媒体类型格式化程序从请求正文中读取name的值
示例
public Student Post([FromBody] string name]){...}
public HttpResponseMessage Post([FromBody] string name) { ... }热门推荐
10 满月祝福语长辈妈妈简短
11 退休祝福语简短独特老师
12 朋友间上午祝福语简短
13 健身之路祝福语大全简短
14 简短的祝福语中秋搞笑
15 送给航天的祝福语简短
16 学生国庆简短的祝福语
17 明天考试祝福语长辈简短
18 英文祝福语 唯美简短的