我正在尝试获取应用程序中所有角色的列表。我查看了以下Getting All Users...帖子和其他来源。这是我的代码,我想这是我应该做的。
var roleStore = new RoleStore<IdentityRole>(context)
var roleMngr = new RoleManager<IdentityRole>(roleStore);
List<string> roles = roleMngr.Roles.ToList();
但是,我得到了以下错误:无法隐式地将type
GenericList(IdentityRole)
转换为List(string)
。有什么建议吗?我正在尝试获取列表,以便可以在注册页上填充下拉列表以将用户分配给特定角色。使用aspnet 4.5和identity framework 2(我认为)。ps我也尝试过roles.getAllRoles方法,但没有成功。
最佳答案
看着你的参考链接,质疑它本身,很明显,角色管理器(rolemngr)是一种类型的identityrole,因此,如果你试图获得角色列表,角色必须是相同的类型。
使用var
代替List<string>
或使用List<IdentityRole>
。
var roleStore = new RoleStore<IdentityRole>(context);
var roleMngr = new RoleManager<IdentityRole>(roleStore);
var roles = roleMngr.Roles.ToList();
希望这有帮助。
关于c# - 试图获得身份中的所有角色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27090227/