2009-05-12 6 views
6

Quiero subcarpetas en mi aplicación MVC, por lo que las rutas actuales simplemente no se cortan.Ruta de MVC de ASP.NET personalizada en carpetas anidadas

Tengo una estructura de carpetas como

Views/Accounts/ClientBalances/MyReport.aspx 

y yo estoy queriendo un enlace como http://myapp/Accounts/ClientBalances/MyReport. ¿Cómo se logra esto con las rutas de mapeo? He tenido una pelea pero no soy muy inteligente con ellos. Pensé que sería a lo largo de las líneas de

routes.MapRoute(_ 
     "Accounts/ClientBalances", _ 
     "Accounts/ClientBalances/{controller}/{action}/{id}", _ 
     New With {.controller = "Home", .action = "Index", .id = ""} _ 
    ) 

No he tenido suerte sin embargo. ¿Algunas ideas?

Respuesta

1

La ubicación de la vista no tiene nada que ver con la ruta. Sus puntos de vista deben estar en Vistas/[ControllerName]

3

Tome un vistazo a de ASP.NET MVC 2 areas; se ven muy similares a lo que estás tratando de lograr. Puede ver un video rápido de 3 minutos presentándolos here.

Si no puede (o no desea) usarlas, marque this answer sobre carpetas de vistas anidadas. En resumen:

puede simplemente volver la vista apropiada como esto (a partir del método de acción):

return View("~/Views/controllername/modulename/actionname.ascx", [optional model]); 
Cuestiones relacionadas