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")); }