我添加了2条路线,以下是我的代码
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.Routes.MapHttpRoute(
name: "HandheldApi",
routeTemplate: "api/handheld/{controller}/{action}"
);
当我使用以下链接http://localhost:64886/api/Account/Get时,此链接对我有用 但我使用以下链接http://localhost:64886/api/handheld/Account/Get,服务器返回“找不到与请求URI匹配的HTTP资源”
我该怎么办?我必须设置2路由,因为新路由是新映射,默认路由将被废弃
答案 0 :(得分:0)
您没有为第二条路线定义defaults
参数。希望这会奏效 -
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.Routes.MapHttpRoute(
name: "HandheldApi",
routeTemplate: "api/handheld/{controller}/{action}"
defaults: new { controller = "MyController", action = "MyMethod" }
);