438 votes

comment déclarer des variables locales dans de Rasoir

Je développe une application web dans asp.net mvc 3. Je suis très nouveau pour elle. Dans une vue à l'aide d'un rasoir, je tiens à déclarer quelques variables locales et de l'utiliser à travers l'ensemble de la page. Comment cela peut-il être fait?

Il semble plutôt banal pour être capable de faire l'action suivante:

@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>
}

Mais cela ne fonctionne pas. Est-ce possible?

632voto

Tomas Jansson Points 8021

Je pense que vous étiez assez proche, essayez ceci:

@{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>
}

63voto

Khash Points 599

Je pense que la variable doit être dans le même bloc:

@{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>
    }
    }

18voto

marcel Points 60

Vous pouvez alse utiliser @if(string.IsNullOrEmpty(Model.CreatorFullName)) { ..... code... }

Pas besoin de variable dans le code

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X