2012-06-05 12 views
6

¿Podría explicarme qué se entiende por '@' antes de cada variable en cshtml?¿Cuál es el significado de '@' iniciar sesión en cshtml?

+1

"El carácter @ comienza expresiones en línea, bloques de instrucciones individuales, y los bloques de múltiples instrucciones:" - de http://www.asp.net/web-pages/tutorials/basics/2-introduction-to -asp-net-web-programming-using-the-razor-syntax ¡Si no está familiarizado con cshtml/Razor, comience aquí! – dash

+0

-1 porque puede haber variables sin variables '@' y '@' sin variables. Al menos podría incluir algunas líneas de muestra. –

Respuesta

12

@ se utiliza para cambiar de la marca de vista al código. Ya sea para imprimir un solo valor o para escribir un bloque de código.

De ASP.NET:

El carácter @ comienza expresiones en línea, bloques de instrucciones individuales, y de múltiples instrucciones bloques:

leer un tutorial en su sintaxis

+0

Su enlace de tutorial está muerto. –

+0

tutorial fijo el enlace, gracias. –

1

voy intenta simplificar la respuesta. Yo mismo escribí un pedazo de código y pensé que salida.El lugares utilizados con mayor frecuencia son: -

  • Se utiliza para colocar los comentarios en una vista de la maquinilla de afeitar (@ * Esta es una línea comentado * @)
  • cuando se usa con los atributos ViewData o Viewbag devueltos directamente desde el controlador. (por ejemplo, @ViewData["SomeVariable"])
  • Se utiliza para marcar una sección del código del lado del servidor en la vista de la maquinilla de afeitar. Podría ser ser un trazador de líneas o incluso un bloque. (por ejemplo, @{int flag = 0, lastVar = 0;})
  • Se utiliza para representar una variable en línea procedente de un modelo (como en MVC) que se usa junto con etiquetas html estándar. (Ex <i>You reached a new level <b> @item.levelName </b></i>.)

NOTA: Este símbolo '@' para la variable en línea debe colocarse incluso si la expresión ya está dentro de un bloque de código de servidor ya representado con el símbolo '@'.

<ul> 
    @for (int i = 0; i < 10; i++) { 
    <li>@i</li>  /*See this inline depiction despite the external for-loop already depicted.*/ 
    } 
    </ul>