【发布时间】:2016-12-07 02:29:48
【问题描述】:
我正在尝试在 WebAPI (C#) 中构建一个 get 操作,它将响应以下内容:
http://{host}/api/Callback/CompleteFlow/{MyId}/{dynamic parameters I have no control on}
例如:http://{host}/api/Callback/CompleteFlow/7?param1=abc¶m2=def
还有:http://{host}/api/Callback/CompleteFlow/7
我创建了一个带有以下签名的动作:
[HttpGet]
public HttpResponseMessage CompleteFlow(int MyId, string requestParams)
{
}
并添加了具体的路由:
config.Routes.MapHttpRoute(
name: "Callback",
routeTemplate: "api/Callback/CompleteFlow/{MyId}/{*requestParams}",
defaults: new { controller = "Callback", action = "CompleteFlow", requestParams = RouteParameter.Optional });
我正在获取 MyId 参数,但不是动态参数到操作中的 requestParams 参数中(我希望获取 requestParams=param1=abc¶m2=def,但改为 null)。
我在这里错过了什么?
谢谢, 尼尔。
【问题讨论】:
标签: asp.net-web-api dynamic get routing