Как получить доступ к таблице AspNetUserRoles в ASP.NET MVC 5 - PullRequest
0 голосов
/ 03 января 2019

Я использую Identity 2 в своем проекте, и я хочу отобразить список AspNetUserRoles в представлении. но я не могу получить доступ к этой таблице из объекта БД. Как получить доступ к этой таблице в ASP.NET MVC 5!? Заранее спасибо за помощь

Ответы [ 2 ]

0 голосов
/ 03 января 2019

Это даст вам список всех пользователей и их ролей.

using(var context = new YourContextName())
{
    var usersAndRoles = new List<UserRoleModel>(); // Adding this model just to have it in a nice list.
    var users = context.AspNetUsers;

    foreach(var user in users)
    {        
        foreach(var role in user.Roles)
        {
            usersAndRoles.Add(new UserRoleModel
            {
                UserName = user.UserName,
                RoleName = role.Name
            };
        }
    }
}

Я не проверял код, может быть более оптимальный способ.

0 голосов
/ 03 января 2019

Вам необходимо импортировать следующую модель в представление, в которое вы хотите получить роли пользователя.

@model IEnumerable<Microsoft.AspNet.Identity.EntityFramework.IdentityRole>   

Тогда вам нужно только сделать foreach для Модели и взять его атрибут Name (item.Name), который он вернет и покажет, например. Администратор, Сотрудник и т. Д.

...