public static async Task <IdentityResult> DeleteAccountAsync(this FaToolUserManager um, FaToolUser user) { if (user.IsAdminUser()) { return(IdentityResult.Failed("Can't delete admin user account.")); } var currentRoles = await um.GetRolesAsync(user.Id); var result = await um.RemoveFromRolesAsync(user.Id, currentRoles.ToArray()); if (result.Succeeded) { result = await um.DeleteAsync(user); } return(result); }
public static async Task <IdentityResult> UpdateRolesAsync(this FaToolUserManager um, FaToolUser user, params string[] roles) { if (roles == null) { roles = new string[] { } } ; var currentRoles = await um.GetRolesAsync(user.Id); var result = await um.RemoveFromRolesAsync(user.Id, currentRoles.ToArray()); if (result.Succeeded) { result = await um.AddToRolesAsync(user.Id, roles); } return(result); }