我无法确定在Site.Master代码隐藏页上确定用户标识的正确语法。
微软表示:
显示登录的用户名:Microsoft ASP.NET Identity Framework在System.Security.Principal.Identity上添加了扩展方法,使您可以获取登录用户的用户名和UserId。这些扩展方法是在Microsoft.AspNet.Identity.Core程序集中定义的。这些扩展方法是HttpContext.User.Identity.Name.的替代方法
虽然这可能有助于经验丰富的编码人员,但我将感谢正确的编码来取代:
HttpContext.Current.User.IsInRole("Administrator")
由于您使用的是Microsoft.AspNetIdentity.Core,因此您可以使用
private UserManager<TenantUser> usermanager= new UserManager<TenantUser>(new UserStore<TenantUser>(_dbContext));
bool isUserInRole = usermanager.IsInRole(Thread.CurrentPrincipal.Identity.GetUserId(), "Administrator");