Hablando como un defensor de monorrail, tengo que decir que probablemente debería ir por ASP.NET MVC. Para ser honesto, el simple hecho de que ASP.NET MVC se convierta en la arquitectura por defecto dentro de tres años probablemente debería cambiarlo. Esta ecuación fue diferente hace un año, simplemente porque la arquitectura por defecto tenía serios problemas de productividad en comparación con MonoRail.
Si quieres hablar ventajas y desventajas técnicas:
- ASP.NET AJAX es un desastre (evitarlo), pero ahora tengo jQuery. De hecho, el soporte jQuery es mejor que cualquier otro entorno. Por supuesto, solo obtiene completamente eso con la integración IDE con el motor de vista estándar.
- Existen algunas mejoras estéticas (por ejemplo, la manera en que se transmite la información del modelo es mucho más clara y más obvia que el monorraíl).
Además, no descarte el motor de vista estándar de la mano. No tiene que lanzar controles como lo hizo con ASP.NET, puede codificarlo de una manera bastante similar a Brail, solo usando C# en lugar de Boo.
Hay cosas que son simplemente fea * la cantidad de métodos que toman el objeto para un parámetro. Buena suerte para encontrar la documentación sobre lo que esperan exactamente. * La afición de Microsoft por las clases abstractas sobre las interfaces. Ellos tienen sus razones, pero todavía no me gusta.
Además, en muchos sentidos, MonoRail sigue siendo la plataforma más completa. No hay abstracción para validación o paginación en ASP.NET, por ejemplo. Además, no hay realmente ninguna ayuda para vincular a un modelo. Los ayudantes tienen muy poca funcionalidad en comparación con sus equivalentes Monorail.
En general, creo que ASP.NET MVC es un ganador.
No hay "lo mejor", esta es una pregunta subjetiva y argumentativa, sugiero que reformules es "pros y contras de x vs y" y eliges cuál es el mejor para ti. –