2012-03-10 39 views
5

Microsoft lanzó recientemente MVC 4 Beta, que tiene estas nuevas características muy agradables como API web y SPA. Y, como siempre, las demostraciones de Microsoft no demuestran las mejores prácticas del diseño de software prospectivo. Por ejemplo, usando DbController que está estrechamente acoplado a EF. Microsoft ASP .NET API web, MVC 4 y arquitectura SPA

Me parece que SPA y Web API van mano a mano en la moderna aplicación ASP .NET. Me gustaría escuchar cualquier sugerencia sobre la estructuración de la solución basada en MVC 4, que va a aplicar estas nuevas tecnologías, como API web y SPA.

Por ejemplo, es una buena práctica separar el proyecto Web API con sus propios controladores fuera del proyecto base MVC4 o no. ¿Cómo lidiar con SPA y no usar DbController para mantener la persistencia de los datos por separado? ¿Cuál va a ser una función principal de la aplicación regular MVC4 y especialmente las vistas Razor?

Cualquier otra idea o sugerencia es muy apreciada.

Respuesta

4

En la separación de la API web MVC4 +: imho (como siempre) depende de su proyecto concreto.

En cuanto a EF: definitivamente no deberías devolver Entidades EF, sino que debes devolver tus propios DTO.

El papel de las vistas de la maquinilla de afeitar MVC podría ser la representación de las vistas parciales que carga dinámicamente desde el cliente. También podría hacer algunas cosas como la carga condicional de CSS/JS, etc. para la página de índice que se carga inicialmente.

3

Creo que es una buena idea mantener la API en un proyecto de sitio web separado de su SPA/sitio web, ya que puede ejecutar problemas con rutas codiciosas.

Definitivamente mantenga su acceso a los datos por separado y débilmente acoplado.

Cuestiones relacionadas