2009-08-21 95 views
7

我已经通过验证的用户使用此代码登录我的系统上:如何隐藏未经身份验证的用户的菜单?

FormsAuthentication.SetAuthCookie(user, false); 

我想隐藏我的系统菜单非认证的用户。类似这样的:

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

我该怎么做?

谢谢。

回答

20
if (Request.IsAuthenticated) 

(这是它是如何在默认ASP.NET MVC模板完成)

+0

谢谢!这对我来说很完美。 – MCardinale 2009-08-21 15:18:25

1

我想你想使用:

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

用户和它的身份可以为空,所以更好使用'Request.IsAuthenticated' – 2010-07-27 14:26:31

4

如果(Request.IsAuthenticated)

在基本mvc项目的登录用户控制中有一个例子。如果你想要的角色

然后

如果(HttpContext.Current.User.IsInRole( “myrole”))

+0

谢谢。我不使用角色,但我很欣赏知道这一点。 – MCardinale 2009-08-21 15:17:51

1

我用:

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

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

但其他答案看起来他们也可以正常工作。

相关问题