Come gestire gli URL non validi in MVC?Gestisci URL non valido in MVC
Per es .: quando l'utente immette http://localhost/User/MyProfile anziché http://localhost/User/Profile, genera un'eccezione.
Come gestire questa richiesta?
Come gestire gli URL non validi in MVC?Gestisci URL non valido in MVC
Per es .: quando l'utente immette http://localhost/User/MyProfile anziché http://localhost/User/Profile, genera un'eccezione.
Come gestire questa richiesta?
È necessario prima di aggiungere una pagina di errore personalizzata URL nel web.config:
<customErrors mode="On" defaultRedirect="~/Error/404" />
E aggiungere un controller per gestire gli URL non validi:
public class ErrorController:Controller
{
[ActionName("404")]
public ActionResult Error404()
{
return View("Error");
}
}
e se si vuoi reindirizzare l'utente alla home page, quindi non hai bisogno del controller Errore, modifica il tag di errore personalizzato:
<customErrors mode="On" defaultRedirect="~/Home/Index" />
Penso che ogni richiesta debba essere reindirizzata al front controller, quindi avvolgi il tuo codice all'interno di un blocco try/catch che intercetta l'eccezione e forse puoi reindirizzare alla homepage nel blocco catch o semplicemente generare un errore 404 con un gestore di eccezioni.
Qual è la lingua del server utilizzata?
sto usando MVC con C#. – Prasad
È etichettato asp.net-mvc-routing –
Ci scusiamo per essere irrilevanti ^^ –
Intendevi questo?
// Show a 404 error page for anything else.
routes.MapRoute("Error", "{*url}",
new { controller = "Error", action = "404" }
);
ya esattamente così, ma quando ho usato quel codice, il suo non reindirizzamento alla pagina specificata. Ancora mostrando "La risorsa non può essere trovata.". Ho aggiunto quanto segue in Global.asax.cs: routes.MapRoute ("Errore", "{* url}", nuovo {controller = "Casa", azione = "Indice"}); – Prasad
Questo sembra corretto ... –
Grazie Marwan e Arnis. Ha funzionato – Prasad
In realtà, ne avrò bisogno presto. Ho anche aiutato me stesso (ha favorito questa domanda). –