我在做什么是:
1.我正在“布局”页面上获取“使用的角色”。

 @{
        List<string> UserRole = new List<string>();
        if(User.Identity.IsAuthenticated){
            UserRole = DocRevGen.Class.Common.Roles(User.Identity.Name);   
        }

    }

2.使用类似UserRole。

@{
                        if (UserRole.Contains("Admin") || UserRole.Contains("User"))
                        {
                        <li class="active"><a href="#">Overview</a></li>    
                        }
                    }

但是问题在于,每次页面加载时都会调用UserRole 我想在登录时填写UserRole一次,并使用UserRole直到注销。

有什么解决办法吗? 我只想要一个提示。 我该怎么办?

===============>>#1 票数:0

您可以将其保存在会话变量中:

Session["roles"] = UserRole;

从会话中获取它:

var roles = (List<string>)Session["roles"];

但这不是一个好主意,因为如果某些用户角色将被删除,则仅在用户注销或会话超时时才应用。

===============>>#2 票数:0

您可以使用数据库并将信息存储在那里。 或者,您也可以使用全局变量,然后仅访问所需的信息。

  ask by Satish Singh translate from so

未解决问题?本站智能推荐: