Это отлично работает:
GET /mvc/Movies/TitleIncludes/Lara%20Croft
Когда я отправляю запрос, содержащий двоеточие, например:
GET /mvc/Movies/TitleIncludes/Lara%20Croft:%20Tomb
... выдает ошибку 400. В сообщении об ошибке говорится: ASP.NET обнаружил недопустимые символы в URL-адресе.
Если я попытаюсь экранировать URL, запрос будет выглядеть так:
GET /mvc/Movies/TitleIncludes/Lara%20Croft%3A%20Tomb
... и это также дает мне ошибку 400.
Если я заменю двоеточие на | :
GET /mvc/Movies/TitleIncludes/Lara%20Croft|%20Tomb
... это также было отклонено как незаконное, на этот раз с ошибкой 500. Сообщение: Недопустимые символы в пути.
URL-экранирование | приводит к той же ошибке.
Я действительно не хочу использовать параметр строки запроса.
связанные:
Отправка URL-адресов/путей к действиям контроллера ASP.NET MVC