Routes 如何在参数绑定中忽略路由数据

Routes 如何在参数绑定中忽略路由数据,routes,asp.net-web-api,asp.net-web-api2,asp.net-web-api-routing,Routes,Asp.net Web Api,Asp.net Web Api2,Asp.net Web Api Routing,在将路由值绑定到控制器的操作参数时,是否有方法指示WebApi忽略路由数据值(路由url中的模式) 例如: 有这个路线声明 routes.Map("RouteName", "/api/{v}/{controller}/{action}/{id}"); 我希望它忽略{v}模式,就好像它不存在一样,例如这个url "/api/123/Testing/Customer/24" 将映射到下面的GetCustomer方法: public class TestingController { [Ht

在将路由值绑定到控制器的操作参数时,是否有方法指示WebApi忽略路由数据值(路由url中的模式)

例如:

有这个路线声明

routes.Map("RouteName", "/api/{v}/{controller}/{action}/{id}");
我希望它忽略{v}模式,就好像它不存在一样,例如这个url

"/api/123/Testing/Customer/24"
将映射到下面的GetCustomer方法:

public class TestingController
{
   [HttpGet, ActionName("Customer")]
   public CustomerData GetCustomer(int id)
   {
     return ...
   } 
}

我不想在GetCustomer方法中添加intv参数,因为我不会以任何方式使用它。我只希望它出现在url中(不需要问为什么,我只想知道是否可能,无论是使用WebApi内置功能还是使用自定义扩展)

似乎默认情况下,此功能包含在WebApi中。具体地说,routeTemplate中所有在方法参数中没有等效参数的模板参数都将被忽略

我在问题中给出的例子是开箱即用的。v模板参数被忽略,url确实映射到所需的方法