gpt4 book ai didi

asp.net - 在 ASP.NET MVC5 中隐藏某些角色的链接

转载 作者:行者123 更新时间:2023-12-03 23:00:23 25 4
gpt4 key购买 nike

所以这听起来可能是一个愚蠢的问题,但我如何仅显示管理员用户的链接?

假设普通用户看到以下链接:
首页/关于我们/联系方式

管理员用户会看到以下链接:
首页/关于我们/联系方式/管理员

我尝试在 Controller 中进行限制并在菜单上链接 Controller 。但它仍然显示每个人的链接,只是不允许除管理员之外的任何人访问

View 可以过载吗?

最佳答案

根据您使用的成员(member)/用户提供程序的类型,您应该能够直接从 View 中检查用户是否已登录并处于特定角色。

所以你最终会得到类似的东西;

@Html.ActionLink("Index", "Home") 
@Html.ActionLink("About", "Home")
@Html.ActionLink("Contact", "Home")
@if ( User.Identity.IsAuthenticated ){
if ( User.IsInRole("Admin") ){
@Html.ActionLink("Admin", "AdminController")
}
}

记得加 [Authorize]归因于您的 Admin Action 方法:
[Authorize(Roles="Admin")]
public ActionResult Admin()
{
// ...
return View();
}

关于asp.net - 在 ASP.NET MVC5 中隐藏某些角色的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18345004/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com