private List <DLL.Appointment> GetAppointments(int userId, int opponentId, out bool opponentAvailabilitySet) { List <DLL.Appointment> appointments = new List <DLL.Appointment>(); opponentAvailabilitySet = false; using (FlexibleTennisLeagueDataContext dataContext = new FlexibleTennisLeagueDataContext()) { appointments = dataContext.SelectAppointmentsByUserIdOpponentId(StoredData.User.UserId, opponentId).ToList(); //Get availability for current user List <SelectAvailabilitiesByUserIdResult> availability = dataContext.SelectAvailabilitiesByUserId(StoredData.User.UserId).ToList(); if (availability.Count > 0) { appointments = CombineAppointmentsWithAvailability(availability, appointments, StoredData.User.UserId); } //Get availability for opponent List <SelectAvailabilitiesByUserIdResult> opponentAvailability = dataContext.SelectAvailabilitiesByUserId(opponentId).ToList(); if (opponentAvailability.Count > 0) { appointments = CombineAppointmentsWithAvailability(opponentAvailability, appointments, opponentId); opponentAvailabilitySet = true; } } return(appointments); }