MVC3 - 在viewbag.message中显示角色名称

发布于 2024-11-29 00:58:43 字数 97 浏览 0 评论 0原文

在 ViewBag.Message 中,我想在消息中显示用户的角色。如果用户属于“客户端”角色。我想添加到现有的视图包中,因此它显示在主页上 Hello User123!您是客户!

In a ViewBag.Message, I would like to display the user's role in a message. If the user is of the "Client" role. I would like to add to the existing viewbag so it say's on the Home page Hello User123! You're a Client!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

明明#如月 2024-12-06 00:58:43

您可以使用成员资格和角色提供程序来获取分配给用户的角色集合。

var user = Membership.GetUser(); //Gets currently logged in user
var roles = Roles.GetRolesForUser(user.UserName); //Gets array of role names assigned to user

角色将是一个字符串数组,因为可以将一个用户分配给多个角色。如果您只想使用第一个角色,您可以这样做:

if( roles.Length > 0 )
{
    ViewBag.Message = string.Format("Hello Bob, you are a {0}", roles[0] ); 
}

在您的视图中,您将访问 ViewBag 的 Message 属性来显示您的消息。

You can use the membership and role providers to get a collection of roles assigned to a user.

var user = Membership.GetUser(); //Gets currently logged in user
var roles = Roles.GetRolesForUser(user.UserName); //Gets array of role names assigned to user

roles will be a string array because a user can be assigned to more than one role. If you want to just use the first role, you could do this:

if( roles.Length > 0 )
{
    ViewBag.Message = string.Format("Hello Bob, you are a {0}", roles[0] ); 
}

In your view, you would access the Message property of the ViewBag to display your message.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文