尼克葱 2021-04-24 12:55 采纳率: 50%
浏览 40

asp.net core 3.1 的问题,如何快速的获得user的role,并且在view页面显示

比如我要在顶部导航,用户名(@User.Identity.Name)的旁边在现实这个用户的role的value,该如何实现。

  • 写回答

1条回答 默认 最新

  • 码农阿豪@新空间 新星创作者: 前端开发技术领域 2024-07-14 21:58
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    要在顶部导航栏显示用户的角色值,可以通过以下步骤实现:
    1. 在页面布局中的顶部导航栏部分,找到显示用户名的位置,通常是通过以下方式获取用户的身份信息:User.Identity.Name
    2. 获取用户的角色信息,可以通过如下代码获取当前用户的角色值:
    var user = User.Identity.Name;
    var userManager = new UserManager<ApplicationUser>();
    var currentUser = userManager.FindByName(user);
    var role = userManager.GetRoles(currentUser.Id).FirstOrDefault();
    
    1. 将获取到的角色值显示在用户的用户名旁边,可以在页面对应位置添加如下代码:
    <span>@User.Identity.Name (@role)</span>
    

    通过以上步骤,就可以在顶部导航栏显示用户的角色值。如果使用ASP.NET MVC等框架,也可以将上述逻辑封装成共享的部分(Partial View)来重复使用,实现更好的可维护性和重用性。

    评论

报告相同问题?