Los controladores ASP.NET MVC que heredan de la clase Controller
permiten procesar muy fácilmente las peticiones realizadas a acciones no definidas. Para ello, lo único que hay que hacer es sobrescribir el método HandleUnknowAction()
e implementar la lógica que queremos que se ejecute en estos casos.
En el siguiente código, las peticiones realizadas a /Home/Index
y /Home/About
serán procesadas normalmente, pero /Home/BeberCerveza
será procesada por HandleUnknowAction
, cuya implementación mostrará la vista “Index” con un mensaje personalizado:
public class HomeController : Controller
{
public ActionResult Index()
{
ViewData["Message"] = "Welcome to ASP.NET MVC!";
return View();
}
public ActionResult About()
{
return View();
}
protected override void HandleUnknownAction(string actionName)
{
ViewData["Message"] = "¿Estás intentando " + actionName + "?";
View("Index").ExecuteResult(this.ControllerContext);
}
}
Alegremente crossposteado desde: Procesar peticiones a acciones inexistentes en ASP.NET MVC @ Variable Not Found
Este genial post de José M. Aguilar sobre como procesar peticiones existentes en ASP.NET MVC , me ha