How do I change the url in MVC 5?

2019-05-25 01:27发布

问题:

I am trying to change a URL in MVC 5 from "Master" to "Master-Franchise" & I thought the following would work but the URL is still just "Master".

    // GET: Master-Fanchise
    [Route("Master-Fanchise")]
    public ActionResult Master()
    {
        return View();
    }

回答1:

Use ActionName attributes which allows you to give action name for controller method regardless of method name.

   [ActionName("Master-Fanchise")]
    public ActionResult Master()
    {
        return View();
    }


回答2:

Have you enabled attribute routing as it is not turned on by default

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        //Add this line of code
        routes.MapMvcAttributeRoutes(); 

    }
}

you may also need to change the controller

[Route("~/ControllerName/Master-Fanchise")]