我正在尝试获得用户角色并修改它。我尝试了多种方法来获得用户角色,但没有任何作用。有什么丢失吗?我可以获得正确的用户实体,但角色总是无效的。有什么方法可以正确地做到吗?谢谢
var user = UserManager.Users.Single(u=>u.Id==id);
var roles = user.Roles;
roles.Add(....)
var user = UserManager.Users.Single(u=>u.Id==id);
user.IsinRole("rolename");
您可以通过索赔获得它们:
var roles = ((ClaimsIdentity)User.Identity).Claims
.Where(c => c.Type == ClaimTypes.Role)
.Select(c => c.Value);
要将用户添加到角色中,您可以执行(,请确保角色在数据库中存在):
var roleresult = UserManager.AddToRole(currentUser.Id, "RoleName");