我已经编写了一个API controller
,我希望将一个添加RoutePrefix
到这个控制器中。
我的控制器名称是MapCompanyController
,这个控制器有一个方法叫做GetMapCompany
.
目前,我可以通过调用以下网址访问此方法:/api/MapCompany/GetMapCompany
我希望添加一个RoutePrefix
以便此方法的路径是:/api/1_0/MapCompany/GetMapCompany
这就是我所做的:
- 我已添加
[RoutePrefix("1_0")]
到MapCompanyController
- 我已添加
routes.MapMvcAttributeRoutes();
到RegisterRoutes
RouteConfig
这样做之后,我仍然可以使用/api/MapCompany/GetMapCompany
地址访问方法,并且/api/1_0/MapCompany/GetMapCompany
执行以下错误:
HTTP Error 404.0 - Not Found
我可以对这段代码有一些帮助吗?
提前致谢
编辑
我创建了一个简单的控制器,如下所示:
public class TestRouteController : ApiController
{
// GET: api/TestRoute/5
public string Get(int id)
{
return "value";
}
}
要访问该Get
功能,以下 url 是正确的:
api/TestRoute/5
如果我将代码更改为如下:
public class TestRouteController : ApiController
{
// GET: api/TestRoute/5
[Route("routetest")]
public string Get(int id)
{
return "value";
}
}
函数的路径是什么Get
?
我尝试了以下方法:
- /api/TestRoute/5
- /api/routetest/5
- /routetest/api/TestRoute/5
- /api/TestRoute/routetest/5