This article has been localized into Spanish by the community.
Sentencias IF
Cuando estas definiendo marcado HTML en tus Vistas, es extremadamente útil definir sentencias condicionales, para decidir sí una porción de las Vistas será o no interpretada y rendereada (mostrada en la página). La sentencia condicional mas común es la sentencia if y puedes usarla en tu código Razor bastante similar a como lo harías en código C# - solo agrega como prefijo la palabra clave con el operador Razor @ y estás listo para seguir.
La sentencia if
Aquí vemos un ejemplo de una simple sentencia if con Razor - recuerda que esto puede ser incluido directamente en tus Vistas, junto con HTML regular:
@if(DateTime.Now.Year == 2042)
{
<span>The year 2042 has finally arrived!</span>
}
Como puedes ver, es solo C# mezclado con HTML. Aunque debes estar atento a dos cosas. La primera, en C# regular, puedo omitir las llaves (" { } "), porque solo hay una línea de código como la condición. Esto no es permitido en Razor - no importa cuantas líneas prosigan a tu estructura de control, esas tendrán que estar rodeadas o envueltas por las llaves (" { } "). Segundo punto, nota como cambio directamente de C# a lenguaje de marcado. Esto es posible porque el parser o analizador puede simplemente entender la diferencia entre etiquetas HTML y código C#. En otra mano, sí solamente hubiera escrito una línea de texto, sin etiquetas HTML, el parser o analizador se habría confundido. Para casos como esos, puedes usar las etiquetas <text>, como se describió en artículos pasados.
La sentencia if-else
A veces cuando hay una sentencia "if" también puede haber un "else" y ahí entra también Razor - puedes crear una sentencia if-else justo como lo harías en C#. Aquí un ejemplo:
@if(DateTime.Now.Year >= 2042)
{
<span>The year 2042 has finally arrived!</span>
}
else
{
<span>We're still waiting for the year of 2042...</span>
}
Resumen
Usar sentencias if en Razor es muy simple, tal como en C#. En combinación con acceso a otras características de C# como ciclos esto vuelve a RAzor un motor de plantillas muy poderoso para tus páginas ASP.NET MVC.