获取在asp.net Identity 2.0中分配了角色的用户列表

Abhimanyu

我有一个下拉列表框,其中列出了角色。我想获取具有该角色的用户列表。我的意思是具有“管理员”角色或“ CanEdit”角色的用户列表。这是我的代码:

public IQueryable<Microsoft.AspNet.Identity.EntityFramework.IdentityUser> 
  GetRolesToUsers([Control] string ddlRole)
{    
  //ddlRole returns role Id, based on this Id I want to list users

  var _db = new ApplicationDbContext();
  IQueryable<Microsoft.AspNet.Identity.EntityFramework.IdentityUser> query = _db.Users;

  if (ddlRole != null)
  {
    //query = query.Where(e => e.Claims == ddlRole.Value);  ???????              
  }

  return query;
}

请帮忙。

更新的代码(仍然错误)

public List<IdentityUserRole> GetRolesToUsers([Control]string ddlRole)
{

  var roleManager = 
   new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(new ApplicationDbContext()));
  var users = roleManager.FindByName("Administrator").Users.ToList();
  return users;
}

错误:当ItemType设置为“ Microsoft.AspNet.Identity.EntityFramework.IdentityUser”时,选择方法必须返回“ IQueryable”或“ IEnumerable”或“ Microsoft.AspNet.Identity.EntityFramework.IdentityUser”之一。

我尝试了各种铸造,但没有一个有帮助。

更新(工作解决方案)

感谢chris544,他的想法帮助我解决了这个问题。这是工作方法:-

public List<ApplicationUser> GetRolesToUsers([Control]string ddlRole)
{
  var context = new ApplicationDbContext();
  var users =
    context.Users.Where(x => x.Roles.Select(y => y.RoleId).Contains(ddlRole)).ToList();

  return users;
}
克里斯544

不是专家,但是...

在Identity中似乎没有内置的功能,我也无法从内置Roles中使用它(它似乎不适用于基于声明的Identity)。

所以我最终做了这样的事情:

var users = context.Users        
    .Where(x => x.Roles.Select(y => y.Id).Contains(roleId))
    .ToList();
  • x.Roles.Select(y => y.Id) 获取所有角色ID的列表 user x
  • .Contains(roleId) 检查此ID列表是否包含必需的ID roleId

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

获取在Identity 2中已分配角色的用户列表

来自分类Dev

ASP.NET Identity2-如何使用AllowAnonymous Controller获取用户ID?

来自分类Dev

从ASP.NET Identity 2.x中的角色中删除用户

来自分类Dev

使用 ASP.Net Identity 时如何获取 AD 用户

来自分类Dev

ASP.NET Identity 2记住我-用户正在注销

来自分类Dev

列出asp.net Identity 2.0中的用户和角色

来自分类Dev

更改ASP.NET Identity 2中的列名

来自分类Dev

在ASP.NET Identity中添加角色

来自分类Dev

基于用户角色的ASP.NET MVC 5 Identity 2登录重定向

来自分类Dev

ASP.Net Identity 2 RemovePassword模拟

来自分类Dev

ASP.Net Identity 2 RemovePassword模拟

来自分类Dev

ASP.NET Identity 2角色似乎在cookie中

来自分类Dev

C# ASP.NET Identity 2 (.NET Framework MVC) - 使用权限和角色

来自分类Dev

获取ASP.NET MVC5 Identity系统中的所有角色名称

来自分类Dev

在ASP.NET Identity中获取通过Microsoft帐户认证的用户的电子邮件

来自分类Dev

ASP.NET Identity 2.0在下拉列表中获取RoleNames

来自分类Dev

使用Asp.Net Identity 2将用户添加到角色后,如何使.AspNet.ApplicationCookie无效?

来自分类Dev

ASP.Net Identity不创建用户

来自分类Dev

ASP.NET Identity用户创建

来自分类Dev

ASP.Net Identity Check以获取多个角色以获得访问权限

来自分类常见问题

ASP.NET Identity中角色与声明的最佳实践

来自分类Dev

无法在ASP.NET中使用“ User.Identity.Name”获取Windows用户名

来自分类Dev

无法在ASP.NET中使用“ User.Identity.Name”获取Windows用户名

来自分类Dev

Asp.net Identity 2自定义用户和自定义表名称

来自分类Dev

ASP.NET Identity 2 UserManager使所有用户异步

来自分类Dev

如何自定义Asp.net Identity 2用户名已采取的验证消息?

来自分类Dev

创建编程用户后无法登录ASP.NET Identity 2网站

来自分类Dev

Asp.Net Identity 2重复的用户名检查

来自分类Dev

是什么为使用ASP.NET Identity 2的用户生成int主键的值的?

Related 相关文章

  1. 1

    获取在Identity 2中已分配角色的用户列表

  2. 2

    ASP.NET Identity2-如何使用AllowAnonymous Controller获取用户ID?

  3. 3

    从ASP.NET Identity 2.x中的角色中删除用户

  4. 4

    使用 ASP.Net Identity 时如何获取 AD 用户

  5. 5

    ASP.NET Identity 2记住我-用户正在注销

  6. 6

    列出asp.net Identity 2.0中的用户和角色

  7. 7

    更改ASP.NET Identity 2中的列名

  8. 8

    在ASP.NET Identity中添加角色

  9. 9

    基于用户角色的ASP.NET MVC 5 Identity 2登录重定向

  10. 10

    ASP.Net Identity 2 RemovePassword模拟

  11. 11

    ASP.Net Identity 2 RemovePassword模拟

  12. 12

    ASP.NET Identity 2角色似乎在cookie中

  13. 13

    C# ASP.NET Identity 2 (.NET Framework MVC) - 使用权限和角色

  14. 14

    获取ASP.NET MVC5 Identity系统中的所有角色名称

  15. 15

    在ASP.NET Identity中获取通过Microsoft帐户认证的用户的电子邮件

  16. 16

    ASP.NET Identity 2.0在下拉列表中获取RoleNames

  17. 17

    使用Asp.Net Identity 2将用户添加到角色后,如何使.AspNet.ApplicationCookie无效?

  18. 18

    ASP.Net Identity不创建用户

  19. 19

    ASP.NET Identity用户创建

  20. 20

    ASP.Net Identity Check以获取多个角色以获得访问权限

  21. 21

    ASP.NET Identity中角色与声明的最佳实践

  22. 22

    无法在ASP.NET中使用“ User.Identity.Name”获取Windows用户名

  23. 23

    无法在ASP.NET中使用“ User.Identity.Name”获取Windows用户名

  24. 24

    Asp.net Identity 2自定义用户和自定义表名称

  25. 25

    ASP.NET Identity 2 UserManager使所有用户异步

  26. 26

    如何自定义Asp.net Identity 2用户名已采取的验证消息?

  27. 27

    创建编程用户后无法登录ASP.NET Identity 2网站

  28. 28

    Asp.Net Identity 2重复的用户名检查

  29. 29

    是什么为使用ASP.NET Identity 2的用户生成int主键的值的?

热门标签

归档