Es posible que tenga una pregunta coja, pero estoy luchando un poco con el enrutamiento de varios controladores en una sola URL. Así que mi pregunta es cómo trabajar con una URL como esta:Múltiples controladores en el enrutamiento
GET http://foo.com/API/Devices/2/Parameters/2
donde finalmente device
y parameters
son todos los controladores y los números son identificadores. Tengo controladores para cada uno de ellos, pero ¿cómo procesarlos, enrutarlos al controlador adecuado?
¿Alguna dirección para mirar?
ACTUALIZACIÓN:
Sólo una aclaración de la solución que Acabé usando y sigue la respuesta a continuación.
enrutamiento fragmento:
config.Routes.MapHttpRoute(
name: "DeviceCommandsControllerHttpRoute",
routeTemplate: "api/devices/{deviceId}/commands/{id}",
defaults: new { controller = "devicecommands", id = RouteParameter.Optional }
);
controlador fragmento:
[HttpGet]
public DeviceCommand GetById(int id, int deviceId)
{ ... }
y finalmente la URL:
GET http://localhost:49479/api/Devices/2/Commands/1