2008-08-25 23 views
12

¿Cómo maneja la nueva aplicación asp.net mvc Microsoft particionar su aplicación - por ejemplo:asp.net mvc - subcarpetas

--index.aspx 
--about.aspx 
--contact.aspx 
--/feature1 
--/feature1/subfeature/action 
--/feature2/subfeature/action 

Creo que lo que estoy tratando de decir es que parece que todo tiene que ir en la raíz de las carpetas de vistas/controladores que pueden resultar difíciles de manejar cuando se trabaja en un proyecto que, si está construido con formularios web, puede tener muchas y muchas carpetas y subcarpetas para particionar la aplicación.

Creo que obtengo el modelo MVC y me gusta su aspecto en comparación con los formularios web, pero todavía me estoy preguntando cómo se podría construir un gran proyecto en la práctica.

Respuesta

11

No hay problemas con la organización de sus controladores. Solo necesita configurar las rutas para tener en cuenta a la organización. El problema con el que se encontrará es encontrar la vista para el controlador, ya que cambió la convención. Todavía no hay ninguna funcionalidad incorporada, pero es fácil crear un trabajo con un Atributo de ActionFilter y un localizador de vista personalizado que se hereda de ViewLocator. Luego, al crear su controlador, solo debe especificar qué ViewLocator usar, para que el controlador sepa cómo encontrar la vista. Puedo publicar un código si es necesario.

Este método está de acuerdo con algunos consejos que le di a otra persona para separar sus puntos de vista para un portal usando ASP.NET MVC. Aquí está el link to the question como referencia.

7

En términos de cómo organizar sus vistas, puede poner sus vistas en subcarpetas si lo desea y crear su propia estructura de vista. Todas las vistas siempre se pueden referenciar por su ruta completa usando la sintaxis ~. Entonces, si coloca Index.aspx en \ Views \ Feature1 \ Home, podría hacer referencia a esa vista usando ~/Views/Feature1/Home/Index.aspx.