[RoutePrefix("api/members/current/withdraws")] public class WithdrawsController
[Route("")] public IHttpActionResult Get([FromUri]Pager pager, int? timeInterval = null, int? status = null)
1、如果 uri 是 api/withdraws,无论是否传参 pager 都可以实例化
2、如果 uri 是 api/members/current/withdraws
a、不传参,pager 为 null
b、传参,且不限定哪个参数,如 ?timeInterval=1, pager 会实例化
c、不传参但 Route 为 Route("{timeInterval=-1}") 设置默认值,也会实例化,这一步可以理解为b
这是为什么?
可以考虑给pager设置个默认值, [FromUri]Pager pager = new Pager()
参数默认值必须是编译时常量,所以用不了new
@Mango_: 不好意思,弄错了。