示例#1
0
        public async Task <ActionResult> AppointSuccessorAsync(string newHoh)
        {
            if (string.IsNullOrEmpty(newHoh))
            {
                return(RedirectToAction("Index", "Home"));
            }

            var me = db.Users.Find(User.Identity.GetUserId());

            me.Household = null;
            db.SaveChanges();

            roleHelper.RemoveUserFromRole(me.Id, "HeadOfHousehold");
            await ControllerContext.HttpContext.RefreshAuthentication(me);

            roleHelper.RemoveUserFromRole(newHoh, "Member");
            roleHelper.AddUserToRole(newHoh, "HeadOfHousehold");

            return(RedirectToAction("Index", "Home"));
        }
        public ActionResult ManageRoles(List <string> userIds, string role)
        {
            foreach (var userId in userIds)
            {
                var userRole = helper.ListUserRoles(userId).FirstOrDefault();
                if (userRole != null)
                {
                    helper.RemoveUserFromRole(userId, userRole);
                }
            }

            if (!string.IsNullOrEmpty(role))
            {
                foreach (var userId in userIds)
                {
                    helper.AddUserToRole(userId, role);
                }
            }
            return(RedirectToAction("manageroles", "admin"));
        }