2011-03-01 21 views
5

Realicé varios sitios web con MVC 1 y ahora estoy listo para omitir la versión 2 para seguir adelante y jugar directamente con la versión 3.Diferencia entre ASP.NET MVC 1 y 3

Sin dar muchos detalles, ¿me puede proporcionar los conceptos clave más importantes que la versión 3 aporta a la mesa en comparación con la versión 1 (versión 2 incluida)?

Voy a investigar sobre esos temas después.

Por ejemplo, escuché sobre "áreas" en v2. Estoy buscando esas grandes cosas que los programadores piensan que vale la pena saber.

Gracias

Respuesta

10

Los documentos What's new in MVC 2 y ASP.NET MVC 3 Release Notes proporcionan una buena visión.

MVC 2:

  • con plantilla Ayudantes
  • Áreas
  • validación en el cliente
  • acción Niño representación
  • datos de anotaciones apoyar
  • Más modelo de unión
  • controladores asincrónicos
  • montón de otras cosas

MVC 3:

  • vista Razor motor
  • validación discreto del lado del cliente y el apoyo jQuery
  • apoyo inyección de dependencia
  • Más Validación
  • JSON modelo vinculante
  • Granular req validación Uest
  • Requiere .NET 4
  • montón de otras cosas

Además existen todas las entradas de blog sobre MVC por Scott Guthrie, Phil Haack, Brad Wilson, y un montón de otros se pueden buscar con muy pequeño esfuerzo.

+0

Muchas gracias .. Voy a tener que hacer algunos estudiando antes de comenzar, +1 –

+2

Solo para suministro, El modelo de mvc3 ahora es compatible con Json. Puede publicar datos usando el formato json directamente. – bearing09

+0

@ bearing09: ¿No necesita serializar sus datos para consultar/publicar el formato? Directamente en JSON? Eso es simplemente bueno. Lo hago tan a menudo. –

2

El Razor View Engine es mucho más agradable que los formularios web. Una cosa a tener en cuenta es que codifica html automáticamente, esto es mucho más seguro, pero deberá llamar al Raw en sus asistentes para devolver html sin codificar.

Hasta ahora, estoy excavando ViewBag, es básicamente un ViewData dinámico y más agradable, y por lo que puedo decir, alivia la necesidad de ViewModels (aunque aún no es tan bueno como Rails).

Es posible encontrar algo como esto en un MVC 1 Ver

<%= ViewData["Title"] %> 

Con la maquinilla de afeitar en MVC 3 se vería como este

@ViewBag.Title 
+1

ViewData todavía funciona bien, de hecho, ambos hacen referencia al mismo diccionario, por lo que se pueden usar indistintamente – naspinski

+0

Derecha - todavía funciona (como lo hace Web Forms VE). ¿Cual prefieres? –

+1

interesante .. una nueva forma de representar páginas. Gracias +1 –

Cuestiones relacionadas