2009-08-21 75 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")) %> 

但其他答案看起來他們也可以正常工作。

相關問題