【问题标题】:Defining routes in asp.net Web API在 asp.net Web API 中定义路由
【发布时间】:2013-06-24 18:35:08
【问题描述】:

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

/api/orders/12/orderdate

其中12是orderId,orderdate是一个动作方法,有2个参数:int orderId,OrderDate orderdate。

这个方法的路由定义是什么?

【问题讨论】:

  • orderdate 是动作名称还是日期参数?

标签: c# asp.net-web-api routes


【解决方案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
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-10
    • 2012-12-29
    • 2016-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-23
    相关资源
    最近更新 更多