Asp.net web api asp.net web api中具有两个参数的方法
如何使用ASP.NET Web Api创建具有两个参数的方法Asp.net web api asp.net web api中具有两个参数的方法,asp.net-web-api,Asp.net Web Api,如何使用ASP.NET Web Api创建具有两个参数的方法 因此,我可以像localhost/controller/param1/param2那样调用它,只需在global.asax中更改或添加路由即可 routes.MapHttpRoute(name: "DefaultApi1", routeTemplate: "api/{controller}/{id}/{name}", Defaults: new{} ); 您还可以在querystring中使用特定的参数名称调用url: /api/a
因此,我可以像localhost/controller/param1/param2那样调用它,只需在global.asax中更改或添加路由即可
routes.MapHttpRoute(name: "DefaultApi1", routeTemplate: "api/{controller}/{id}/{name}", Defaults: new{} );
您还可以在querystring中使用特定的参数名称调用url:
/api/actions?param1=5¶m2=1/1/2000
那么控制器方法将是:
GetByParams(int param1, DateTime param2)
我认为最简单的方法就是简单地使用
AttributeRouting
[Route("api/YOURCONTROLLER/{paramOne}/{paramTwo}")]
public string Get(int paramOne, int paramTwo) {
return "The [Route] with multiple params worked";
}
{}
名称需要与您的参数匹配
这是更好的答案。公认的答案是可行的,但URL没有那么大的意义/对于URL:,id/name的计算结果如下所示。那没有多大意义。像“文斯”是“12345”类别中的某个项目。这是一个更有意义或很好的答案。这正是我想要的。你能提供一个关于GetByParams方法的官方详细信息的链接吗?我一直找不到它。不过我已经测试过了,它的工作原理和你描述的一样。伙计,我用了1000次,一直认为这是一种“黑客”,还有更好的方法。看起来这实际上是最好的做法。。