伙计们感谢您提前回复。
我必须在许多页面中显示许多操作链接,并且我在用户角色之间拥有授权,所以我正在编码,如果其他内容在视图中,但我想让它简短,这就是为什么我选择 htmlHelper 扩展方法这是我的代码。
public static MvcHtmlString ValidationActionLink(this HtmlHelper htmlHelper, string linkText, string actionName, string controllerName, string AllowedRole)
{
if (User.IsInRole(AllowedRole))// its given me error The User dosent exist in current context Am i missing some namespace or what ?
{
htmlHelper.ActionLink(linkText, actionName);
}
}
您可以使用以下方法在扩展方法中访问User
public static MvcHtmlString ValidationActionLink(this HtmlHelper htmlHelper, string linkText, string actionName, string controllerName, string AllowedRole)
{
var user = htmlHelper.ViewContext.HttpContext.User;
或者,可以通过向扩展方法添加其他参数来User
传递给该方法。