C# 正在检查razor页面中的登录用户角色
我还发现C# 正在检查razor页面中的登录用户角色,c#,asp.net,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 4,我还发现返回视图(用户)不好,因为我不知道如何使用该用户 @if(Request.IsAuthenticated&&User.IsInRole(“管理员”)) public ActionResult AuthenticatedUserLayout(string username) { var lst=userContext.UserProfiles.ToList(); var user = lst.Select(u => u.UserNam
返回视图(用户)
不好,因为我不知道如何使用该用户
@if(Request.IsAuthenticated&&User.IsInRole(“管理员”))
public ActionResult AuthenticatedUserLayout(string username)
{
var lst=userContext.UserProfiles.ToList();
var user = lst.Select(u => u.UserName == username);
if(IsAdmin(Session["LoginUser"].ToString())) return View(user); else return Index();
}
{
- @ActionLink(“主页”、“索引”、“主页”)
- @ActionLink(“关于”、“关于”、“主页”)
- @ActionLink(“联系人”、“联系人”、“主页”)
您好,@User.Identity.Name!
}
戴夫的答案是正确的。我建议您考虑在您的模型中使用一个属性,称为“代码> ISORDER < /CODE >或<代码> ChansEsIdBar < /Cord>,并将该问题回答为<强>域逻辑< /强> <
视图应仅适用于模型。查看线程,从数据库中读取,在回答域问题方面是相同的。在控制器将模型交给视图之前,应回答所有这些类型的问题。对于ASP.NET Core Razor页面
@if (Request.IsAuthenticated && User.IsInRole("Administrators"))
{
<div id="sidebar">
<div class="module">
<ul class="menu">
<li>@Html.ActionLink("Home", "Index", "Home")</li>
<li>@Html.ActionLink("About", "About", "Home")</li>
<li>@Html.ActionLink("Contact", "Contact", "Home")</li>
</ul>
</div>
<div class="mainContent">
Hello, @User.Identity.Name !
</div>
</div>
}
@if(Request.IsAuthenticated&&User.IsInRole(“administrator”))
如果你想把它放在一个共享视图上,这不是很难吗?通过导航,你几乎肯定会这样做。遗憾的是,不支持像[Authorize(Role=“administrator”)或[Authorize(Policy=“RequireAdministratorRole”)]@OzanBAYRAM这样的Authorize属性,您可以使用Authorize属性,但这样做并不方便。一个更好的方法可能是携带一个有权限的用户对象。谢谢,@dave alperovich,我注意到我忘了将页面指令添加到cshtml文件中。这就是为什么我不能让它工作。有没有办法根据个人权限来检查这个问题?@JordanLeeBurnes,你只能检查用户是否是管理员
@if (Request.IsAuthenticated && User.IsInRole("Administrators"))
{
<div id="sidebar">
<div class="module">
<ul class="menu">
<li>@Html.ActionLink("Home", "Index", "Home")</li>
<li>@Html.ActionLink("About", "About", "Home")</li>
<li>@Html.ActionLink("Contact", "Contact", "Home")</li>
</ul>
</div>
<div class="mainContent">
Hello, @User.Identity.Name !
</div>
</div>
}
if (User.Identity.IsAuthenticated && User.IsInRole("Administrator"))