Question

According to the article "What's New in ASP.NET MVC5", you must add this to your RegisterRoutes() method in order to use Attribute Routing:

routes.MapMvcAttributeRoutes();

...so that the method is now:

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.MapMvcAttributeRoutes();

    routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );
}

I do not have that additional/middle call, and my attribute routing has been working just dandy.

So what does adding that do for me, if anything?

Was it helpful?

Solution

You only need this if you use attribute routing on your MVC controllers. Your WebAPI attribute routing works because of this line in WebApi.Config.cs

// Web API routes
config.MapHttpAttributeRoutes();
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top