如何在mvc HtmlExtension方法中访问用户身份详细信息?

时间:2016-05-19 06:45:45

标签: asp.net-mvc asp.net-identity

你好,感谢您的回复。

我必须在很多页面中显示许多动作链接,并且我在用户角色之间有权限,所以我正在编码,如果在视图中,否则我想简短,这就是为什么我去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);
     }                      
}

1 个答案:

答案 0 :(得分:1)

您可以使用

访问扩展方法中的User
public static MvcHtmlString ValidationActionLink(this HtmlHelper htmlHelper, string linkText, string actionName, string controllerName, string AllowedRole)
{
    var user = htmlHelper.ViewContext.HttpContext.User;

或者,您可以通过向扩展方法添加其他参数来将User传递给该方法。