Route based parameter binding doesn't decode %2F #6388
Description
This is a big problem for us, we are going to have to change our entire webapi's to use query based or to put a manual decode step in everyone "in case". I understand there were previous requests for Kestrel to do this but it couldn't due to IIS/Http.sys and that is fine.
But we want to(actually do) use Kestrel internally without anything infront and with ASP.NET 2.0 we are hoping to be able to externally as well.
I have included a repo to show the problem with
http://localhost:5000/api/ExpectedUrl/my%20test%5Curl%2F
returning : my test\url/
Which is what I would expect, and this url
http://localhost:5000/api/DefaultUrl/my%20test%5Curl%2F
returing : my test\url%2F
The difference my "expected" method has
return WebUtility.UrlDecode(someValue);
I am hoping you will tell me there is a "switch" I can flick to solve this across our entire application (I understand, well I don't but if you don't want it on by default that is okay)