Export (0) Print
Expand All

Controller.HandleUnknownAction Method

Called when a request matches this controller, but no method with the specified action name is found in the controller.

Namespace:  System.Web.Mvc
Assembly:  System.Web.Mvc (in System.Web.Mvc.dll)

protected virtual void HandleUnknownAction(
	string actionName
)

Parameters

actionName
Type: System.String
The name of the attempted action.

The result object that is prepared by this method is written to the response by the MVC framework when the object is executed.

The following example shows how to render views that do not have a matching ActionResult method. For example, if you have a Details.aspx view but no corresponding method exists that returns an ActionResult instance, the following example displays the Details view when a request to for the Details action is made on the controller. If there is no matching view, the error page displays a message. This example shows one way to use the [M:System.Web.Mvc.Controller.HandleUnknownAction(System.String) method.] Action methods are not required to return an ActionResult object.

protected override void HandleUnknownAction(string actionName) {
    try {
        this.View(actionName).ExecuteResult(this.ControllerContext);
    } catch (InvalidOperationException ieox ) {
        ViewData["error"] = "Unknown Action: \"" + 
            Server.HtmlEncode(actionName) + "\"";
        ViewData["exMessage"] = ieox.Message;
        this.View("Error").ExecuteResult(this.ControllerContext);
    }
}  

Community Additions

Show:
© 2014 Microsoft