我需要一份所有角色的列表。 我已经看到我可以通过域获取所有角色或用户获得所有角色。
我认为我可以获取所有域名,然后循环获取每个域名的所有角色。
但似乎你只能通过名字获得一个域名,我不能对它们进行硬编码,因为它会不时出现。
那么,任何想法如何获得所有安全角色?作为字符串的名称就足够了。
感谢。
答案 0 :(得分:5)
您可以使用:
Roles.GetAllRoles()
来自命名空间 Sitecore.Security.Accounts 的
如果您想从角色中获取所有用户,您可以使用:
IEnumerable<User> _roleUsers = Sitecore.Security.Accounts.RolesInRolesManager.GetUsersInRole(Role.FromName("Your role name"), true);
答案 1 :(得分:0)
接受的答案并不完全正确。 GetAllRoles()方法位于RolesInRolesManager类中。它可以如下调用:
using Sitecore.Security.Accounts;
...
IEnumerable<Role> roleList = RolesInRolesManager.GetAllRoles();