在我的控制器类中,我实现了我的接口,控制器类是ApiController的子类
我有一个名为Read的API方法。 我希望默认的Get()调用Read()。
无需做
Get()
{
Read();
}
另外,我不想做/ api / {controller} / {action} / {id}
我希望/ api / {controller} / {id}能够路由到 Read()方法而不是Get()
问题是: 假设我有一个名为Devices的控制器。当对/ api / Devices / heppens发出GET请求时,我希望它调用我的特定方法而不是APIController的Get()方法。
答案 0 :(得分:0)
您可以使用ASP.NET Web API属性路由! (http://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-in-web-api-2)
[HttpGet]
[Route("api/MyController/MyAction")]
public string Read() {
return "You issued a GET request to the Read method";
}
您可以使用路线做任何您想做的事情,只需确保在WebApiConfig
中映射路线,如下所示:config.MapHttpAttributeRoutes();
(有关详细信息,请参阅文章)。