コード例 #1
0
        public ActionResult EditUserRoles(List <UserRoleViewModel> users)
        {
            //UserRolesHelper uRoleHelper = new UserRolesHelper();
            var helper = new UserRolesHelper();

            var usersInAdminRole = helper.UsersInRoles("Admin");
            var adminCount       = usersInAdminRole.Count();


            foreach (var c in users)
            {
                if (c.admin)
                {
                    helper.AddUserRole(c.userId, "Admin");
                }
                else
                {
                    if (adminCount > 0)
                    {
                        helper.RemoveUserRole(c.userId, "Admin");
                        adminCount--;
                    }
                }
                if (c.projectManager)
                {
                    helper.AddUserRole(c.userId, "Project Manager");
                }
                else
                {
                    helper.RemoveUserRole(c.userId, "Project Manager");
                }
                if (c.developer)
                {
                    helper.AddUserRole(c.userId, "Developer");
                }
                else
                {
                    helper.RemoveUserRole(c.userId, "Developer");
                }
                if (c.submitter)
                {
                    helper.AddUserRole(c.userId, "Submitter");
                }
                else
                {
                    helper.RemoveUserRole(c.userId, "Submitter");
                }
            }

            return(RedirectToAction("ListUsers"));
        }