private void UpdateUserPermissions(string[] selectedPermissions, User userToUpdate) { if (selectedPermissions == null) { userToUpdate.UserPermissions = new List <UserPermission>(); return; } var selectedPermissionsHS = new HashSet <string>(selectedPermissions); var instructorCourses = new HashSet <int> (userToUpdate.UserPermissions.Select(p => p.Permission.PermissionID)); foreach (var perm in _context.Permissions) { if (selectedPermissionsHS.Contains(perm.PermissionID.ToString())) { if (!instructorCourses.Contains(perm.PermissionID)) { userToUpdate.UserPermissions.Add(new UserPermission { UserID = userToUpdate.ID, PermissionID = perm.PermissionID }); } } else { if (instructorCourses.Contains(perm.PermissionID)) { UserPermission permissionToRemove = userToUpdate.UserPermissions.SingleOrDefault(u => u.PermissionID == perm.PermissionID); _context.Remove(permissionToRemove); } } } }
public IActionResult DeleteSupplier(long id) { context.Remove(new Supplier { SupplierId = id }); context.SaveChanges(); return(Ok(id)); }