Web api自定义路由

Zol*_*adi 4 asp.net-mvc asp.net-mvc-4 asp.net-web-api

我有一个名为QuotaController的Controller,我可以通过httprequests访问它,如下所示:

本地主机:12345 /配额/

我想要的是将端点放在某处,以便我可以访问它:

本地主机:12345 /配额/增量

要么

本地主机:12345 /配额/递减

如何才能做到这一点?

Dar*_*rov 5

您可以更改Web api路由定义以允许传递操作名称:

routes.MapHttpRoute(
    name: "DefaultApi",
    routeTemplate: "api/{controller}/{action}/{id}",
    defaults: new { id = RouteParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)

然后:

public class QuotaController : ApiController
{
    public void Increment()
    {
        ...
    }

    public void Decrement()
    {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)