0

我正在尝试使用以下语法定义一个 Put api 方法:

/api/orders/12/orderdate

其中 12 是 orderId,orderdate 是具有 2 个参数的操作方法:int orderId、OrderDate orderdate。

此方法的路由定义可能是什么?

4

1 回答 1

1

你可以使用这条路线:

config.Routes.MapHttpRoute(
            name: "Orders",
            routeTemplate: "api/{controller}/{orderId}/{action}"
        );

如果您愿意,也可以更明确:

config.Routes.MapHttpRoute(
            name: "Update Order Date",
            routeTemplate: "api/orders/{orderId}/orderdate"
            defaults: new { controller = "Orders", action = "OrderDate" }
        );

您的操作方法如下所示:

[HttpPut]
public HttpResponseMessage OrderDate(int orderId, OrderDate orderDate)
{
    // implementation
}
于 2013-06-25T19:03:09.310 回答