Pregunta

En la estructura de carpetas MVC, donde residirán los archivos de clase general? Por ejemplo, tengo una clase que determina el DataContext derecho a usar, así que no estoy reinventar la rueda en cada una de mis reguladores. En caso de que vivir en la carpeta de controladores a pesar de que no es un controlador? Si fuera con los modelos porque está relacionado base de datos, a pesar de que no es un modelo? Posiblemente las vistas \ carpeta compartida? O está contenido el cajón de sastre carpeta para ese tipo de cosas? Estoy seguro de que podría poner en cualquier lugar, pero me preguntaba donde el lugar "correcto" es.

¿Fue útil?

Solución

No es un controlador, el contenido o una vista, por lo que no utilizan aquellos. Suena más estrechamente relacionada con su modelo, por lo que podría poner en modelo en una subcarpeta llamada "ayudantes" o "utilidad" o algo así. O se puede añadir otra carpeta de nivel superior llamados Servicios y ponerlo allí. Ahí es donde pongo toda mi lógica aplicación, el intermediario entre los controladores y el modelo.

Otros consejos

Si nos fijamos en Rob MVC Storefront: proyecto de biblioteca de clases independiente (como Commerce.MVC.Data)

Si podría ser útil por sí mismo (pensar en una línea de comando herramienta construida a su alrededor), ponerlo en la carpeta Modelos. Si se utiliza sólo como una ayuda para los controladores, lo puso en la carpeta Controladores.

Realmente depende de lo que hace, si se accede a los datos que debe estar en la capa de acceso de datos, de lo contrario se puede poner en la carpeta del controlador.

Tener un montaje DataAccess separada, hacen que la clase interna y llamarlo DataContextFactory.

dmajkic,

¿Por qué separar hacia fuera en su propia área? Si su código BLL que debe estar en la carpeta de controlador, si su DAL artículo relacionado debe estar en el modelo. Puedo entender si un proyecto enorme y se desea crear algunas subcarpetas, que no debería ser un problema. Sin embargo, la colocación de código en otro nivel realmente en contra del propósito de MVC ¿no le parece?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top