将所有用户及其角色放入表asp.net mvc

每个源电流

我试图找出如何将所有用户及其角色放入一个漂亮的有条理的表中,看到了许多不同的方法,但没有一种对我有用。我至少有一点努力...任何可以帮助我的人吗?

通过此代码,我可以获得所有角色:

        var context = new ApplicationDbContext();
        var roleStore = new RoleStore<IdentityRole>(context);
        var roleManager = new RoleManager<IdentityRole>(roleStore);
        var roles = (from r in roleManager.Roles select r.Name).ToList();
        ViewBag.Roles = roles.ToList();

并使用此代码获得所有注册用户:

        var context = new ApplicationDbContext();
        var userStore = new UserStore<ApplicationUser>(context);
        var userManager = new UserManager<ApplicationUser>(userStore);
        var users = (from u in userManager.Users select u.UserName).ToList();
        ViewBag.Users = users.ToList();

最后用这段代码我得到所有用户的ID

        var context = new ApplicationDbContext();
        var user = (from u in userManager.Users select u.Id).ToList();
        ViewBag.id = user.ToList();

但是如何获得所有用户的角色?我真的不知道

IndieTech解决方案

这是一个获取用户列表(带有用户名)和关联角色列表的选项。

控制器:

public ActionResult GetRoles()
        {
            var userRoles = new List<RolesViewModel>();
            var context = new ApplicationDbContext();
            var userStore = new UserStore<ApplicationUser>(context);
            var userManager = new UserManager<ApplicationUser>(userStore);

            //Get all the usernames
            foreach (var user in userStore.Users)
            {
                var r = new RolesViewModel
                {
                    UserName = user.UserName
                };
                userRoles.Add(r);
            }
            //Get all the Roles for our users
            foreach (var user in userRoles)
            {
                user.RoleNames = userManager.GetRoles(userStore.Users.First(s=>s.UserName==user.UserName).Id);
            }

            return View(userRoles);
        }

视图模型

public class RolesViewModel
{
    public IEnumerable<string> RoleNames { get; set; }
    public string UserName { get; set; }
}

视图:简单的一个

@model IEnumerable<StackOverflow.Models.RolesViewModel>
@foreach (var user in Model.ToList())
{
    <div> @user.UserName -- </div>
    foreach (var role in user.RoleNames)
    {
        <div> @role </div>
    }
    <br />
}

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

ASP.net MVC-为一个用户/角色授权控制器,但为所有操作授权所有用户

.NET MVC 获取具有任何角色列表的所有用户

ASP.Net MVC用户列表及其角色

将数据存储在内存中,所有用户都可以访问asp.net mvc

ASP.NET MVC授权具有多个角色的用户

具有MVC Asp.net身份角色的用户列表

ASP.NET(MVC)用户,角色和角色中的用户

如何通过dotnet将所有身份文件放入ASP.NET Core 2.1 MVC项目中?

如何计算ASP.NET Core 2.0中具有特定角色的所有用户

ASP.net Identity 2.1使所有用户都具有角色

查找带有Resharper的ASP.NET MVC视图的所有用法

角色/用户的ASP.NET MVC黑名单

从ASP.NET MVC 5中的角色中删除用户

ASP.Net MVC 5检查用户角色的_Layout

如何在ASP.NET MVC 5中列出具有角色名称的用户

ASP.NET MVC 标识。无法向具有特殊字符的用户添加角色

ASP.NET MVC 5 Identity 2.0,Windows Auth,具有角色属性的用户模型

Discord.net 打印所有用户角色

选择除管理员之外的所有角色。C# ASP.NET MVC

Asp .Net MVC,如何将值放入/包含 DropDownListFor?

ASP.NET - 将 AspNetUsers 表中的所有用户显示到身份中的下拉列表中?

在ASP .NET MVC中更改角色权限

Asp.net 身份 我可以编写什么 linq 查询来返回具有角色的所有用户,包括没有角色的用户?

将jQuery数据表中的一行中的所有输入值传递给asp.net mvc

ASP.NET MVC与Spring MVC

Spring MVC与ASP.NET(MVC?)

ASP.NET MVC获取内容所有者用户名

ASP.NET MVC找不到用户

ASP.NET MVC 用户使用