public void DeleteByID(int ID)
        {
            StaffMember member = staff.Find(x => x.ID == ID);

            if (member == null)
            {
                throw new ValidationException("No record found for id");
            }
            if ((member.GetType().Name == "Manager") && (((Manager)member).AssignedEmployees.Count != 0))
            {
                throw new IntegrityViolationException("There are employees assigned to this manager", ((Manager)member).AssignedEmployees);
            }
            staff.Remove(member);
        }