如何使用不同角色的通用母版页?

时间:2012-05-02 13:48:46

标签: c# asp.net master-pages

我想对不同的角色使用常见的master-page,我只想根据角色设置不同的主题和菜单项,有人可以指导我如何在同一母版页中使用我的会员代码吗?

对于我目前的代码,我从codeplex中下载了为不同角色设置不同母版页的会员代码,但我知道当我必须为根据角色访问的所有角色制作一些常用页面时,我必须在每个角色文件夹中创建页面页面,并根据角色将其设置为主页面菜单,因此我想为所有人使用通用母版页....

1 个答案:

答案 0 :(得分:1)

您可以在OnPreInit方法中以编程方式更改母版页:

protected override void OnPreInit(EventArgs e)
{
    base.OnPreInit(e);    

    if (Roles.IsUserInRole("Admins"))
    {         
        Page.MasterPageFile = "AdminDefault.master";
        return;
    }

    Page.MasterPageFile = "Default.master";
}

如果几个或更多页面将使用此功能,我会考虑将其放在页面可以继承的基类中。