У меня есть следующий код маршрутизации:
routes.MapRoute(
"email-validated/{sessionId}",
"email-validated/{sessionId}",
new { controller = "User", action = "EmailValidated", sessionId = UrlParameter.Optional }
);
Когда я вхожу в маршрут с кодом, закодированным в URL, он не будет соответствовать маршруту для% 2f,% 2b и некоторых других экранированных символов. Это также не будет соответствовать для не закодированных URL (вещи с / + и т. Д.) Например,
Это работает:
Адрес электронной почты апробированы / XQiKC6KMM% 2cmko4nOvzGRwPu9oaZFoCtXsFFJg3ZTf9S5rsBbLGjnz3FN3SJ0apEZcqK1PIcCY28mRMykB39XnFLKaL7390CDfLZiV77cso
Это не работает (содержит% 2f и т. Д.):
email-validated/XQiKC6KMM%2fmko4nOvzGRwPu9oaZFoCtXsFFJg3ZTf9S5rsBbLGjnz3FN3SJ0apEZcqK1PIcCY28mRMykB39XnFLKaL7390CDfLZiV77cso
Это не работает (содержит + и т.д.)
email-validated/XQiKC6KMM+mko4nOvzGRwPu9oaZFoCtXsFFJg3ZTf9S5rsBbLGjnz3FN3SJ0apEZcqK1PIcCY28mRMykB39XnFLKaL7390CDfLZiV77cso