5
Me gustaría que mis direcciones URL a utilizar la convención:¿Cómo puede mi ruta usar parámetros opcionales en el medio de la URL utilizando ASP MVC3?
/{controller}/{id}/{action}
en lugar de
/{controller}/{action}/{id}
He intentado establecer una ruta de la siguiente manera:
routes.MapRoute(
"Campaign",
"{controller}/{action}/{id}",
new { controller = "Campaign", action = "Index", id = UrlParameter.Optional }
);
Pero esto no funciona porque no puedo hacer que el parámetro id sea opcional.
Los siguientes URL Cómo funcionan:
/campaign/1234/dashboard
/campaign/1234/edit
/campaign/1234/delete
Pero estas URL no hacer:
/campaign/create
/campaign/indexempty
MVC sólo llama Index
para ambos. ¿Qué estoy haciendo mal?
Eso funcionó! Leve modificación de su código: denominé la primera ruta "CampaignDetail" para que no entrara en conflicto con la segunda ruta. – parleer
Oh, me lo perdí. Me alegra que haya ayudado. –
Una cosa más - Tener '{controller}/{id}/{action}' interfirió con mi ruta predeterminada. Pude solucionar esto al usar explícitamente la palabra ** campaña ** en mi url. es decir 'campaign/{id}/{action}'. – parleer