ASP.NET MVC:显示用户角色

Posted

技术标签:

【中文标题】ASP.NET MVC:显示用户角色【英文标题】:ASP.NET MVC: Display user's role 【发布时间】:2018-11-11 10:25:27 【问题描述】:

为了显示用户名,我使用了以下内容:

@HttpContext.Current.User.Identity.Name

现在,我在显示用户的角色名称时遇到了麻烦,因为我不知道该怎么做。

【问题讨论】:

只需检索角色并将其放入视图中使用的模型中。 @CodeNotFound 我该怎么做?你能帮帮我吗 你使用视图模型吗?如果不检查这个问题 => ***.com/questions/11064316/what-is-viewmodel-in-mvc 是的,我正在使用视图模型 把代码分享到你想展示的地方。 【参考方案1】:

假设您将 MVC 身份用于您的角色。将以下属性添加到您的视图模型:

public IList<string> RolesforthisUser  get; set; 

在您的控制器操作中,您可以调用用户的角色并通过以下方式填充您的视图模型:

viewModel.RolesforthisUser = UserManager.GetRoles(userID);

其中 userID 是您在 AspNetUsers 表中的用户 ID。

然后您可以通过以下方式在页面上列出用户角色:

<ul>
    @foreach (var role in Model.RolesforthisUser)
    
        <li>
            @role
        </li>
    
</ul>

【讨论】:

以上是关于ASP.NET MVC:显示用户角色的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET MVC - 根据用户角色获取数据库数据

ASP.NET Core 3.1 MVC 如何让用户在注册时选择自己的角色?

Asp.Net Mvc 使用用户角色编辑用户配置文件

七天学会ASP.NET MVC ——Layout页面使用和用户角色管理

如何使用 asp.net mvc 从头开始​​添加用户角色

使用 ASP.net MVC 创建新用户时设置角色