Esempio n. 1
0
        public async Task <ActionResult> ManageUserAdmin(ManageUserAdminViewModel model)
        {
            List <string> AddRoles    = new List <string>();
            List <string> DeleteRoles = new List <string>();

            var usr = _UserManager.FindByNameAsync(model.UserName).Result;

            foreach (string roleName in model.UserRoles.Keys)
            {
                if (model.UserRoles[roleName])
                {
                    AddRoles.Add(roleName);
                }                           //if true we want the user to have this role
                else
                {
                    DeleteRoles.Add(roleName);
                }
            }

            await _UserManager.AddToRolesAsync(usr, AddRoles);         //assign role

            await _UserManager.RemoveFromRolesAsync(usr, DeleteRoles); //remove other roles

            return(RedirectToAction("ManageAccounts", "Account"));
        }
Esempio n. 2
0
        public ActionResult ManageUserAdmin(string userName)
        {
            var model = new ManageUserAdminViewModel(); //viewmodel to be used in form

            model.UserName   = userName;
            ViewBag.UserName = userName;

            var usr = _UserManager.FindByNameAsync(userName).Result;

            var roles = _Context.Roles.ToList();

            for (int i = 0; i < roles.Count; i++)
            {
                string roleName = roles[i].Name;
                model.UserRoles.Add(roleName, _UserManager.IsInRoleAsync(usr, roleName).Result);
            }

            return(View(model)); //return view, with data stored in viewResult.ViewData.Model
        }