c# - mvc - ¿Cómo declarar una variable local en Razor?
sintaxis razor mvc 5 (6)
Creo que estabas bastante cerca, prueba esto:
@{bool isUserConnected = string.IsNullOrEmpty(Model.CreatorFullName);}
@if (isUserConnected)
{ // meaning that the viewing user has not been saved
<div>
<div> click to join us </div>
<a id="login" href="javascript:void(0);" style="display: inline; ">join</a>
</div>
}
Estoy desarrollando una aplicación web en asp.net mvc 3. Soy muy nuevo en eso. En una vista que usa afeitadora, me gustaría declarar algunas variables locales y usarlas en toda la página. ¿Cómo se puede hacer esto?
Parece bastante trivial poder hacer la siguiente acción:
@bool isUserConnected = string.IsNullOrEmpty(Model.CreatorFullName);
@if (isUserConnected)
{ // meaning that the viewing user has not been saved
<div>
<div> click to join us </div>
<a id="login" href="javascript:void(0);" style="display: inline; ">join</a>
</div>
}
Pero esto no funciona. es posible?
Creo que la variable debería estar en el mismo bloque:
@{bool isUserConnected = string.IsNullOrEmpty(Model.CreatorFullName);
if (isUserConnected)
{ // meaning that the viewing user has not been saved
<div>
<div> click to join us </div>
<a id="login" href="javascript:void(0);" style="display: inline; ">join</a>
</div>
}
}
No es una respuesta directa al problema de OP, pero puede ayudarlo también. Puede declarar una variable local junto a algunos html dentro de un ámbito sin problemas.
@foreach (var item in Model.Stuff)
{
var file = item.MoreStuff.FirstOrDefault();
<li><a href="@item.Source">@file.Name</a></li>
}
Si está buscando una variable int, una que se incremente a medida que los bucles de código, puede usar algo como esto:
@{
int counter = 1;
foreach (var item in Model.Stuff) {
... some code ...
counter = counter + 1;
}
}
También puedes usar:
@if(string.IsNullOrEmpty(Model.CreatorFullName))
{
...your code...
}
No hay necesidad de una variable en el código.
declarar una var para acceder a través de la página ... la parte superior de la página por lo general funciona. implícita o explícitamente su elección.
@{
//implicit
var something1 = "something";
//explicit
string something2 = "something";
}
@something1 //to display on the page
@something2 //to display on the page