【发布时间】:2021-09-28 03:38:19
【问题描述】:
我的Views 的某些部分存在自定义授权问题(我不想放在PartialView 上),而是使用If 语句,如下所示:
@if (item.CurrentComment.Id == Guid.Parse(ViewBag.UserId) || repository.IsUserInRoles(Guid.Parse(ViewBag.UserId),"Manager") )
{
<dd>
<a href="@Url.Action("EditComment", "Ticketing",new { id = item.CurrentComment.Id, ticketId = Model.Tickets.CurrentTicket.Id })" class="btn btn-primary btn-sm" data-toggle="tooltip" data-placement="left">Edit</a>
</dd>
<dd>
<a href="@Url.Action("RemoveComment", "Ticketing",new { id = item.CurrentComment.Id, ticketId = Model.Tickets.CurrentTicket.Id })" class="btn btn-danger btn-sm" data-toggle="tooltip" data-placement="left">Remove</a>
</dd>
}
目前,我在控制器中获取了我的UserId,并使用如下所示的 ViewBag 将其传递过来:
ViewBag.UserId = User.Identity.GetUserId();
我想知道如何在剃须刀中直接调用GetUserId 方法,这样我就不会再用ViewBag 发送它了。我试过使用User.Identity.,但那里的方法是未知的,我认为它不知道扩展名。有办法解决吗?
【问题讨论】:
标签: c# asp.net-mvc razor