¿Cómo puedo hacer un método con dos parámetros usando ASP.NET Web Api?Método con dos parámetros en asp.net web api
De modo que pueda llamar así localhost/controlador/param1/param2
¿Cómo puedo hacer un método con dos parámetros usando ASP.NET Web Api?Método con dos parámetros en asp.net web api
De modo que pueda llamar así localhost/controlador/param1/param2
Sólo cambia o agrega ruta en global.asax
routes.MapHttpRoute(name: "DefaultApi1", routeTemplate: "api/{controller}/{id}/{name}", Defaults: new{});
También puede llamar a la URL con nombres específicos en el params cadena de consulta:
/api/actions?param1=5¶m2=1/1/2000
entonces el método controlador sería:
GetByParams(int param1, DateTime param2)
Creo que la manera más fácil es simplemente usar AttributeRouting
.
[Route("api/YOURCONTROLLER/{paramOne}/{paramTwo}")]
public string Get(int paramOne, int paramTwo) {
return "The [Route] with multiple params worked";
}
Los nombres {}
necesitan para satisfacer sus parámetros.
¡Funcionó para mí! Gracias. –
Hombre Lo usé 1000 veces, y siempre pensé que era una especie de "truco" y hay una mejor manera. Parece que esto es en realidad la mejor práctica ... – Kadaj
Esta es la mejor respuesta. La respuesta aceptada funciona, pero la URL no tiene tanto sentido./id/name funciona de la siguiente manera para una URL: http: //www.mysite/api/DoStuff/12345/Vince. Eso no tiene mucho sentido. Como "Vince" es un elemento de la categoría "12345". http: //www.mysite/api/users/Vince tiene mucho más sentido o http: //www.mysite/api/users? name = Vince & id = 12345 – vbullinger
Great Answer. Exactamente lo que quería. –
Coul, ¿proporciona un enlace a los detalles oficiales sobre el método GetByParams? No he podido localizarlo. Lo he probado, sin embargo, y funciona como usted lo describió. – galmok