在context.user中找到所有角色



我必须检查用户的所有角色。目前im im检查Isinrole。但是我想找到所有角色。隐藏显示一些数据。

 if (Context.User.IsInRole("Travel_Admin"))
                    {
                        visibleTables.Remove(item_level10);
                        visibleTables.Add(item_level1);
                        visibleTables.Add(item_level2);
                        visibleTables.Add(item_level3);
                        visibleTables.Add(item_level4);
                        visibleTables.Add(item_level5);
                    }
                    else
                    {
                        visibleTables.Remove(item_level1);
                        visibleTables.Remove(item_level2);
                        visibleTables.Remove(item_level3);
                        visibleTables.Remove(item_level4);
                        visibleTables.Remove(item_level5);
                        visibleTables.Remove(item_level12);
                        visibleTables.Remove(item_level10);
                    }

我需要在context.user中找到该特定用户的所有角色。注意:我是基于角色的身份验证的初学者。

如果您需要查找用户的所有角色,请使用以下内容:

Roles.GetRolesForUser()

它将为您提供其所有角色的字符串阵列。您可以为mtehod指定用户。

您可以在以下方法中使用它:

foreach(string role in Roles.GetRolesForUser())
{
   // do treatment for this role of the user
}

有关此方法,请参见此处:http://msdn.microsoft.com/en-us/library/system.web.security.roles.getRolesforuser.aspx

在MX2解决方案中,您可以浏览定义的所有类型的角色,不仅此用户角色!

您可以在MSDN中找到角色方法:http://msdn.microsoft.com/en-us/library/system.web.security.roles_methods.aspx

尝试以下:

 foreach (var item in Roles.GetAllRoles())
 {
      if(Context.User.IsInRole(item))
      {
            //code
      }
      else
      {
            //code
      }
 }

相关内容

  • 没有找到相关文章

最新更新