Вопрос

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?

Это было полезно?

Решение

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();
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top