2012-08-06 7 views
7

Vengo de Ruby on Rails, y necesito crear una aplicación web C#. Actualmente estoy buscando ASP.NET MVC y MonoRail. La mayoría de las comparaciones que encuentro son de 2008-2009, cuando ASP.NET MVC aún era nuevo, y la mayoría de los puntos en contra de MVC era que era demasiado crudo, no tan refinado como MonoRail.Buscando una comparación moderna entre ASP.NET MVC y MonoRail

Bueno, han pasado varios años desde entonces, y Microsoft hizo mucho trabajo en ASP.NET MVC. ¿Cómo se comparan las versiones modernas de los dos marcos entre sí?

+0

Sin embargo, es una pregunta amplia. ASP.NET MVC es estable y funciona muy bien. La versión actual es MVC 3.0 y requiere .NET Framework 4.0, Admite páginas Razor y páginas ASPX. – Rajesh

Respuesta

2

evalué monorraíl hace unos cuatro años y, en comparación con MVC3 de hoy, estas son las principales diferencias (en mi humilde opinión)

  • motor de plantillas como la maquinilla de afeitar por defecto MVC. Es un placer usarlo, mientras que el monorriel dejó de funcionar en NVelocity. Revisé el sitio web de Castleproject y hay un plan para actualizar Monorail ...
  • Mucho más documentación para MVC3, y tal como hoy - tal vez es mi culpa - No puedo encontrar ninguna documentación en línea en el sitio de Monorail.
  • Áreas, Parciales, Razor extremadamente integrado en VS2010. Y si no te gusta, puedes conectarte y usar diferentes motores de plantillas.
  • MVC3 tiene una mejor integración Ajax/jQuery, validación de formularios discreta
+0

OK, gracias. Lo probaré. –

1

He estado trabajando con los dos marcos de los últimos años. Inicial, nos quedamos con el monorriel cuando salió el mvc, ya que sentimos que era crudo. IMHO MVC3 está ahora en un punto donde es más maduro que Monorail 2 con mejor soporte, más documentación y versiones más nuevas que salen regularmente.

  • Razor es más poderoso que nvelocity y tiene un gran soporte de Visual Studio que nvelocity no tiene.
  • Las vistas de monorraíl no se compilan frente a la vista de MVC3 que se compilan. A veces, cuando desarrolla es bueno simplemente cambiar una vista y ver, luego cambiar de inmediato. Por otro lado, las vistas compiladas son más rápidas.
  • El monorriel no ha tenido una nueva versión por un tiempo y parece estancado. Sin embargo, Monorail3 está en proceso.
  • MVC3 también admite asistentes, ambos como métodos de extensión, pero también puede declararlos directamente en sus vistas Razor. Monorail admite helpers solo como métodos estáticos de una clase auxiliar.
  • MVC3 tiene mucho mejor soporte de enrutamiento.
  • MVC3 ahora también tiene compatibilidad con IoC para filtros.
  • MVC3 admite la aplicación de filtros al nivel del método, pero el monorriel admite filtros solo en el nivel del controlador.
  • MVC3 no es compatible con un Ioc de fábrica, pero en su lugar puede usar IDependencyResolver para esto. Puedes encontrar muchas soluciones para esto.
  • MVC3 tiene un gran soporte para ataques CSRF. En Monorail deberás desarrollar esto por tu cuenta usando una combinación de ayudantes y filtros.
  • MVC3 admite vistas de compilación previa para que pueda minimizar los errores antes de publicar su sitio. pero no puede hacer esto con la vista nvelocity en Monorail ya que se interpretan
  • MVC3 html codifica cualquier cadena automáticamente. En Monorail siempre necesitas llamar a un ayudante para esto.

Cuando salga el monorriel 3, será interesante ver lo que admiten. Mire https://docs.google.com/document/d/1AkeeJPh8kZQKtnHN3RDR3v-UfG7zt9wCL0jMiualUqI/edit?hl=en&authkey=CN7U99YN&pli=1, que es una propuesta de valor para Monorail 3 de Hammet.

Cuestiones relacionadas