2011-09-14 24 views
2

我正在用masterPage開發一個應用程序。如何使基於角色的masterPage內容可見?

我想把loginStatus,LoginName控件放到masterPage中。

現在,我希望這些loginStatus和LoginName控件僅在用戶爲admin時纔可見。 (管理員將專門導航到登錄頁面,沒有登錄/註銷鏈接,登錄用戶名應顯示爲非管理員)

我該如何做到這一點?

+0

'如果(管理員){myControl.Visible = TRUE; }' –

回答

2

有一個LoginView,這支持的角色:

<asp:LoginView ID="LoginView1" runat="server"> 
    <RoleGroups> 
     <asp:RoleGroup Roles="Admin"> 

     </asp:RoleGroup> 
    </RoleGroups> 
</asp:LoginView> 
1

需要知道更多關於你的身份驗證設置,但如果你使用標準ASP.NET角色管理器,你應該能夠做這樣的事情:

loginControl.Visible = Page.User.IsInRole("Admin"); //or whatever the role is 
0

檢查用戶角色

if (Page.User.IsInRole("admin")) 
    { 
     loginStatus.Visible = true; 
    }