相关疑难解决方法(0)

在URL中使用斜杠"/"路由参数

我知道您可以在route属性中应用通配符以允许/例如日期输入:

[Route("orders/{*orderdate}")]
Run Code Online (Sandbox Code Playgroud)

通配符的问题仅适用于URI中的最后一个参数.如果要拥有以下URI,如何解决问题:

[Route("orders/{orderdate}/customers")]
Run Code Online (Sandbox Code Playgroud)

更新:

我知道通过重构代码来解决问题的选择很少,所以请不要提供类似的解决方案:

  1. 将路径模板更改为 [Route("orders/customers/{orderdate}")]
  2. 将日期更改为其他格式(例如"dd-mm-yyyy")

c# url asp.net-web-api attributerouting asp.net-web-api-routing

35
推荐指数
2
解决办法
3万
查看次数

如何在请求参数中匹配web api 2路由和正斜杠?

我正在使用Web API 2属性路由,我有一个未正确解决的请求.

[Route("~/foo/{bar?}")]
public void Get(string bar);
Run Code Online (Sandbox Code Playgroud)

我的要求是:mydomain.me/foo/abc/def

我希望收到bar作为"abc/def",但正斜线会使路线匹配.用"%2F"替换正斜杠并不能解决问题.

asp.net-web-api asp.net-web-api-routing

9
推荐指数
1
解决办法
4121
查看次数