tutorial sintaxis pages net mvc else component asp asp.net asp.net-mvc-3 syntax razor

asp.net - pages - sintaxis razor mvc 5



Comparaciones de la sintaxis de Razor vs ASPX (4)

Recientemente me he metido en MVC3 y Razor, y he leído varios artículos sobre estos temas para comprender mejor el concepto.

He estado leyendo la publicación del blog de Scott Guthrie , en la que proporciona los siguientes 2 ejemplos. La primera es sintaxis ASPX, la segunda es sintaxis Razor:

Esto es genial, pero como una comparación justa de ASPX y Razor estoy un poco confundido.

Nunca he visto ningún ejemplo funcional de sintaxis ASPX como ese. ¿Seguramente los desarrolladores han usado controles de Repeater , etc. desde que ASP.NET fue lanzado? No he visto una sintaxis como esa desde ASP clásico.

Siempre pensé que era una mala práctica poner el código de programación en línea con el archivo de marcado, en lugar del código detrás del archivo.

¿Algún código de ASP.NET ASPX como este?


¿Algún código de ASP.NET ASPX como este?

Lo dudo. Los desarrolladores de Classic WebForms usan controles del lado del servidor, como los repetidores.

Los desarrolladores de ASP.NET MVC, por otro lado, usan mucho esta sintaxis. Bueno, en realidad podría usar Plantillas de visualización en ASP.NET MVC, lo que le evita escribir feos bucles foreach.


Siempre pensé que era una mala práctica poner el código de programación en línea con el archivo de marcado, en lugar del código detrás del archivo.

Eso es cierto para el desarrollador de C # WinForm / WPF que utiliza la arquitectura MVVM. Pero creo que todavía es una buena práctica colocar el código de programación en línea en ASP.NET MVC.


Creo que definitivamente te estás confundiendo. Tu primer ejemplo no es el tradicional asp.net. Es lo que el motor de renderizado de MVC usó para usar la máquina de afeitar (MVC 1 y MVC 2, lo que creo que se llama el motor de visualización de WebForms).

Estoy muy seguro de que no puede usar un foreach en las páginas tradicionales de ASP.Net. (El comentario de Veli me corrigió sobre esto)

Con MVC 3 puede elegir usar el motor de vista Razor, que, como puede ver en el ejemplo, es mucho más fácil de leer. Por supuesto, con MVC 3 aún puede elegir hacerlo de la otra manera, esta es una opción que selecciona al crear el proyecto inicial.

Puedes leer más sobre las diferencias aquí.


No confunda el código de programación y el código para mostrar una propiedad. Es una mala práctica poner el código de programación en un archivo de marcado. Sin embargo, el código que está mostrando es el que se usa para hacer el marcado.

MVC debe tratarse como un marco MVC normal y todo el código lógico debe estar en el Controlador.