c# - 试图获得身份中的所有角色

标签 c# asp.net asp.net-identity asp.net-roles

我正在尝试获取应用程序中所有角色的列表。我看过以下帖子 Getting All Users...和其他来源。这是我的代码,我认为这是我应该做的。

var roleStore = new RoleStore<IdentityRole>(context)
var roleMngr  = new RoleManager<IdentityRole>(roleStore);
List<string> roles = roleMngr.Roles.ToList();

但是,我收到以下错误:无法将类型 GenericList(IdentityRole) 隐式转换为 List(string)。有什么建议么?我正在尝试获取列表,以便我可以在注册页面上填充下拉列表以将用户分配给特定角色。使用 ASPNet 4.5 和身份框架 2(我认为)。

PS 我也尝试过 Roles.GetAllRoles 方法但没有成功。

最佳答案

查看您的引用链接并 self 质疑,很明显角色管理器 (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/

相关文章:

c# - ASP :GridView not getting info from SqlDataAdapter with Stored Procedure

c# - 在 ASP.NET 中为 OAuth2 创建重定向 URI

c# - MySql.Data.MySqlClient 引用在 Visual Studio 2015 中不起作用

java - JSP/Java 中的 ASP.NET Page.ispostback 等效项

javascript - 在 IE 中以编程方式隐藏弹出窗口

asp.net-identity - Blazor WebAssembly 身份验证与 IdentityServer4、Asp.Net Core Identity 和没有 Entity Framework 的自定义提供程序

c# - 强制关闭xamarin android app 谁用了sqlite-net crud操作

asp.net - 值不能为空。参数名称 : value

SignalR 和 ASP.NET 标识 ExpireTimeSpan

asp.net - 为什么 Application_Start 从不同的线程调用两次?