是否可以在路线中进行多部分动作?

时间:2013-02-01 22:54:30

标签: .net asp.net-mvc-4 asp.net-web-api asp.net-web-api-routing

好的,所以典型的路线可能如下所示:

{controller}/{action}/{id}

问题是我们现有的端点看起来像这样

{controller}/Somesortofgrouping/{action}

例如,这是我们的付款控制器。我们可能有以下端点:

payment/credit/sale
payment/credit/refund
payment/cash/sale

方法名称分别为:

CreditSale();
CreditRefund();
CashSale();

因此,为了保留我们的约定,不是必须将每个端点添加到WebApiConfig,有没有办法使用模板来处理这种情况?

1 个答案:

答案 0 :(得分:2)

您可以考虑使用优秀的 AttributeRouting 包和使用属性在控制器/操作本身上配置路由,而不是将每个端点添加到配置中。

与MVC相比,某些限制适用于Web API(如文档中所列)。

使用此库后,很难想象回去维护单独的路径配置。