Jak zezwolić na „nielegalne znaki na ścieżce”?
Mam aplikację MVC.NET z jedną trasą w następujący sposób:
routes.MapRoute("member", "member/{id}/{*name}", new { controller = "member", action = "Details", id = "" }, new { id = @"\d+" });
Tak więc linkiem może być coś takiego:http: // domena / członek / 123 / any_kind_of_username
Działa to ogólnie dobrze, ale jeśli ścieżka zawiera niedozwolone znaki (np. Podwójna kolejka:http: // domena / członek / 123 / mój_„użytkownik” _name) Otrzymuję „System.ArgumentException: Nielegalne znaki w ścieżce”.
Po wielu hasogach najlepsze sugestie wydają się mieć pewność, że adres URL nie zawiera żadnych takich znaków. Niestety, w tym przypadku jest to poza moją kontrolą.
Czy istnieje sposób na obejście tego problemu?