使用ASP.NET标识在Site.Master上确定用户标识的正确语法

时间:2013-12-17 11:13:55

标签: asp.net asp.net-identity

我无法确定正确的语法来确定页面后面的Site.Master代码上的用户身份。

微软说:

显示登录用户名:Microsoft ASP.NET Identity Framework在System.Security.Principal.IIdentity上添加了扩展方法,允许您获取登录用户的UserName和UserId。这些扩展方法在Microsoft.AspNet.Identity.Core程序集中定义。这些扩展方法是HttpContext.User.Identity.Name。

的替代品

虽然这可能有助于有经验的编码员,但我会很感激正确的编码代替:

HttpContext.Current.User.IsInRole("Administrator") 

1 个答案:

答案 0 :(得分:0)

由于您使用的是Microsoft.AspNetIdentity.Core,因此可以使用

 private UserManager<TenantUser> usermanager= new UserManager<TenantUser>(new UserStore<TenantUser>(_dbContext));
 bool isUserInRole = usermanager.IsInRole(Thread.CurrentPrincipal.Identity.GetUserId(), "Administrator");