我需要一个所有角色的列表。 我已经看到,我可以通过域获取所有角色,或者通过用户获取所有角色。Sitecore获取所有角色
我以为我可以得到所有的域名,然后做一个循环来获取每个域名的所有角色。
但似乎你可以通过名字得到一个域名,我不能硬编码他们,因为会不时有新的。
那么,任何想法如何我可以得到所有的安全角色?名称作为一个字符串就足够了。
谢谢。
我需要一个所有角色的列表。 我已经看到,我可以通过域获取所有角色,或者通过用户获取所有角色。Sitecore获取所有角色
我以为我可以得到所有的域名,然后做一个循环来获取每个域名的所有角色。
但似乎你可以通过名字得到一个域名,我不能硬编码他们,因为会不时有新的。
那么,任何想法如何我可以得到所有的安全角色?名称作为一个字符串就足够了。
谢谢。
您可以使用:
Roles.GetAllRoles()
从命名空间Sitecore.Security.Accounts
如果你想从角色的所有用户可以使用:
IEnumerable<User> _roleUsers = Sitecore.Security.Accounts.RolesInRolesManager.GetUsersInRole(Role.FromName("Your role name"), true);
接受的答案并不完全正确。 GetAllRoles()方法位于RolesInRolesManager类中。它可以被称为如下:
using Sitecore.Security.Accounts;
...
IEnumerable<Role> roleList = RolesInRolesManager.GetAllRoles();
谢谢!我正在寻找Sitecore.Security命名空间,我忘记了System.Web.Security。我想你在谈论那个? – Bgl86
Sitecore.Security.Accounts是命名空间,我更新了答案 –
嗨,我正在使用Sitecore 7.2,并且我无法在Sitecore.Security.Accounts命名空间中找到该方法。 – Bgl86