Blazor Отображение ролей от пользователей ASP.NET - PullRequest
0 голосов
/ 21 апреля 2020

Здесь я получил свою GetUsers

public List<IdentityUser> GetUsers()
    {
        SeeUsers = new List<IdentityUser>();
        var user = usermanager.Users.Select(x => new IdentityUser
        {
            Id = x.Id,
            UserName = x.UserName,
            Email = x.Email
        });
        foreach (var item in user)
        {
            SeeUsers.Add(item);
        }
        return user.ToList();
    }

Это моя страница

    <AuthorizeView Roles="Admin" Context="Beheer">
        <table class="table">
            <thead>
                <tr>
                    <th>Id</th>
                    <th>User Name</th>
                    <th>Email</th>
                </tr>
            </thead>
            <tbody>
                @foreach (var user in users)
                {
                    <tr>
                        <td>@user.UserName</td>
                        <td>@user.Email</td>
                    </tr>
                }
            </tbody>
        </table>
    </AuthorizeView>
</AuthorizeView>
@code {
    List<IdentityUser> users = new List<IdentityUser>();
    List<IdentityRole> roles = new List<IdentityRole>();
    protected override void OnInitialized()
    {
        users = UserService.GetUsers();
    }
}


проблема в том, что мне нужно добавить роль пользователя из aspnetuserroles к столу, и я не могу понять, как это сделать.
Я пытался rolemanager, но это дало бы name и id роли, а не привязанного к ней пользователя.
Есть ли способ получить информацию прямо из aspnetuserroles?

Я хочу что-то вроде этого
Предварительный просмотр

1 Ответ

0 голосов
/ 21 апреля 2020

Если вы используете ApplicationDbContext, вы должны иметь доступ к таблицам ASPNetRoles и ASPNetUserRoles через EF Core API. Вы можете пропустить UserManager и RoleManager и создать сервис (или добавить его в свой UserService), который получает необходимую информацию непосредственно из базы данных. Если у вас есть Users, Roles и UserRoles, вы можете создать представление logi c, чтобы отобразить его по мере необходимости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...