En asp.net mvc (4), las vistas van directamente a la carpeta Views
, y luego se agrupan por controlador en subcarpetas.ASP.NET MVC: Agrupación de clases alrededor del controlador
controladores entran en Controllers
carpeta, (Ver/Editar/Entrada) Modelos entran en Models
carpeta, etc.
me gusta la forma en que se organizan vistas. Sin embargo, no me gusta romper horizontalmente el resto de las piezas de MVC.
Mi pregunta es, ¿cuáles serían las desventajas de dejar vistas de la estructura de la organización de las cosas tal como están, pero agrupar otras clases por controlador (es decir, por casos de uso). Por ejemplo:
/Home
HomeController.cs
IndexViewModel.cs
IndexViewModelBinder.cs
/Messages
MessagesController.cs
MessagesApiController.cs
MessagesViewModelBinder.cs
MessageViewModel.cs
MessagesListViewModel.cs
/Views
/Home
Index.cshtml
/Messages
MessagesIndex.cshtml
MessageDetails.cshtml
Esto es en gran parte para lo que son las áreas. –
Las áreas agruparán los componentes relacionados, es cierto, pero aún tendrá los 5 controladores en una carpeta y 10 modelos de vista en otra carpeta. Entonces, Areas alivian el problema, pero no es equivalente a la solución que expuse. –