任何人都可以看到我的路线配置有什么问题吗?我试图通过以下方式调用我的web api控制器:
localhost/Attribution/api/Client
localhost/Attribution/api/Fund
我有几个扩展ApiController的控制器,名为ClientController和FundController。
这是我的路线配置。我总是得到HTTP 404 The resource cannot be found
。
GlobalConfiguration.Configuration.Routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
GlobalConfiguration.Configuration.Routes.MapHttpRoute(
name: "test",
routeTemplate: "api/{controller}/{id}/{action}",
defaults: new
{
id = RouteParameter.Optional,
action = RouteParameter.Optional
});
答案 0 :(得分:0)
您需要包含一个操作,该操作应该在您的控制器中。如上所述,url / api / Client不知道要调用的操作。相反,尝试:
GlobalConfiguration.Configuration.Routes.MapHttpRoute(
name: "test",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new
{
action = "Index",
id = RouteParameter.Optional
});
然后URL / api / Client应在控制器“Client”中调用操作“Index”。