问题
I'm using Web API 2 attribute routing and I have a request which is not resolved properly.
[Route("~/foo/{bar?}")]
public void Get(string bar);
My request it's like: mydomain.me/foo/abc/def
I expect to receive bar as "abc/def" but the forward slash messes the route match. Replacing the forward slash with "%2F" doesn't solve the problem.
回答1:
You could use wildcard based matching like below:
[Route("~/foo/{*bar}")]
public string Get(string bar)
来源:https://stackoverflow.com/questions/20034227/how-to-match-web-api-2-route-with-forward-slashes-in-request-parameters