我为Web Api定义了一条路线,如下所示
routes.MapHttpRoute(
name: "SearchApi",
routeTemplate: "api/search/{controller}-{seopath}",
defaults: new { seopath = RouteParameter.Optional }
);
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
然而,当我从visual studio运行它并转到http://localhost:50356/api/search/jobs-in-Bangalore时,我收到404错误消息“找不到与控制器匹配的类型'jobs-in'。”
在本书中,Professional Asp.Net MVC 1.0,第207页{title} - {author}被作为有效的路径网址给出,那么为什么它将“jobs-in”解释为控制器而不是“工作”呢?
答案 0 :(得分:1)
显然这场比赛很贪婪。为什么不定义您的路线,如:
routeTemplate: "api/search/{controller}/{seopath}"