2009-08-21 34 views
7

Je les utilisateurs authentifiés de se connecter sur mon système en utilisant ce code:Comment cacher mon menu pour les utilisateurs non authentifiés?

FormsAuthentication.SetAuthCookie(user, false); 

Je veux cacher mon menu système pour les utilisateurs non authentifiés. Quelque chose comme ceci:

<% if(???) {%> 
    <ul id="menu> 
     ... 
    </ul> 
<% } %> 

Comment est-ce que je peux faire ceci?

Merci.

Répondre

20
if (Request.IsAuthenticated) 

(Voici comment cela est fait dans le modèle par défaut ASP.NET MVC)

+0

Merci beaucoup! C'est parfait pour moi. – MCardinale

1

Je pense que vous voulez utiliser:

<% if(this.User.Identity.IsAuthenticated) { %> 
<% } %> 
+1

L'utilisateur et son identité peuvent être null, il est donc préférable d'utiliser 'Request.IsAuthenticated' –

4

si (Request.IsAuthenticated)

Il y a un exemple de ceci dans le contrôle d'utilisateur de connexion du projet mvc de base.

si vous voulez des rôles puis

si (HttpContext.Current.User.IsInRole ("myrole"))

+0

Merci. Je n'utilise pas de rôles, mais j'apprécie de le savoir. – MCardinale

1

J'utilise:

<% if(HttpContext.Current.User.Identity.IsAuthenticated) %> 

ou

<% if(HttpContext.Current.User.Identity.IsInRole("roleName")) %> 

mais les autres réponses semblent aussi bien fonctionner.

Questions connexes