在Web API默认路由中,如下所示:
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
现在可以调用不同的控制器,如下所示:
/api/contacts
/api/contacts/1
/api/products/gizmo1
我想将其更改为将默认网址映射到给定的控制器: 例如如果我做了以下
我应该对路由进行哪些更改?
干杯
答案 0 :(得分:0)
在这种情况下你需要有两条路线,如下面给出的
config.Routes.MapHttpRoute(
name: "DefaultApi1",
routeTemplate: "api/{id}",
defaults: new { controller = "contacts"}
);
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new {controller = "contacts", id = RouteParameter.Optional}
);