Asp.net mvc 4 MVC4WebAPI 404
有人看到我的路线配置有什么问题吗?我正试图通过以下方式调用我的web api控制器:Asp.net mvc 4 MVC4WebAPI 404,asp.net-mvc-4,Asp.net Mvc 4,有人看到我的路线配置有什么问题吗?我正试图通过以下方式调用我的web api控制器: localhost/Attribution/api/Client localhost/Attribution/api/Fund 我有两个扩展ApicController的控制器,分别是ClientController和FundController 这是我的路线配置。我总是得到HTTP 404资源找不到 GlobalConfiguration.Configuration.Routes.MapRoute(
localhost/Attribution/api/Client
localhost/Attribution/api/Fund
我有两个扩展ApicController的控制器,分别是ClientController和FundController
这是我的路线配置。我总是得到HTTP 404资源找不到
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
});
您需要包含一个动作,并且该动作应该在控制器中。如前所述,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”。对于ApiController,这些操作都是来自httpRequest的动词。所以api/Controller/Get将映射到HTTP Get请求,api/Controller/Post将映射到HTTP Post请求,等等……我在一个WebApi项目中也遇到了同样的问题。有没有想过你做错了什么?