
需求是这样的,http 需要接收若干个参数,采用[HttpGet],其中 page 参数和 size 参数都是有默认值的,其他参数都不是必须的。 当我使用[FromUri]传递参数的时候,测试时只选择了 page 和 size 参数,出现错误如下:
{ "Message": "找不到与请求 URI“http://localhost/open/user/supplier/users?page=2&size=10”匹配的 HTTP 资源。", "MessageDetail": "在控制器“User”上找不到与该请求匹配的操作。" } 只有将全部参数都带上才没有错误,比如这样
http://localhost/open/user/supplier/users?account=dw2071&page=2&size=10 但我现在的需求是参数不是必须的 目前代码是这样的
public IHttpActionResult getUsers( [FromUri] string account, [FromUri] string name, [FromUri] string insDateL, [FromUri] string insDateU, [FromUri] string status, [FromUri] bool direction, [FromUri] string sort, [FromUri] int page = 1, [FromUri] int size = 10 ) { // exp } 我想问一下如何解决这个问题?谢谢
1 kingkongs OP 设置默认值可以解决 |
2 MonoLogueChi 2020-03-24 14:18:56 +08:00 试试不写[FromUri],或者是所有参数写成一个类,用[FromQuery] |