【发布时间】:2018-03-02 20:50:05
【问题描述】:
我已经配置了以下
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.Routes.MapHttpRoute(
name: "DefaultApiWithAction",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
并具有以下网络 api
public class MobileAppController : ApiController
{
[HttpGet, Route("api/mobileapp/services")]
public dynamic services()
{
return new { Abc = 123 };
}
}
调用http://localhost:123/api/mobileapp/services时出现错误
在控制器“MobileApp”上找不到与名称“服务”匹配的操作
【问题讨论】:
-
可以分享一下WebApiConfig吗?
-
您的
WebApiConfig.cs中有config.MapHttpAttributeRoutes();吗? -
@Igor 是的,如果您没有将
config.MapHttpAttributeRoutes();这一行添加到您的 api 配置中,则方法路由不起作用。 -
是的,我有 config.MapHttpAttributeRoutes();
-
你的启动中的代码真的被调用了吗?它会执行你的路由配置吗?
标签: c# .net asp.net-web-api