在asp.net mvc 4 razor视图中获取用户声明

时间:2013-10-22 17:02:10

标签: asp.net-mvc

如何在Razor视图中获取当前身份验证用户的类型声明?

我尝试了一些选项,例如以下内容,但没有成功:

(ClaimsPrincipal)User.Identity).FindFirst(ClaimTypes.NameIdentifier); }

谢谢你, 米格尔

1 个答案:

答案 0 :(得分:22)

尝试转换为ClaimsIdentity。这适用于我的MVC5项目。

        @{
        var claimsIdentity = User.Identity as System.Security.Claims.ClaimsIdentity;

        if (claimsIdentity != null)
        {
            var c = claimsIdentity.FindFirst(System.Security.Claims.ClaimTypes.NameIdentifier);

            if (c != null)
            {
             <p>
                 @c.Type.ToString(); 
                 @c.Value.ToString();
             </p>   
            }
        }
    }