public List <Schedule> ScheduleList(string from, string to, int sortByIndex, string outbound, string flightNumber)
        {
            string[]        sortBy    = { "Schedules.Date, Schedules.Time", "Schedules.EconomyPrice", "Schedules.Confirmed" };
            List <Schedule> Schedules = new List <Schedule>();
            SqlDataReader   reader    = null;

            try
            {
                execution.OpenConnection("Session2");
                string sql          = "select Schedules.ID, Schedules.Date, Schedules.Time, a1.IATACode as 'From', a2.IATACode as 'To', Schedules.FlightNumber, Aircrafts.Name as 'Aircraft', Schedules.EconomyPrice, Schedules.Confirmed from Schedules join Routes on Schedules.RouteID = Routes.ID join Airports a1 on a1.ID = Routes.DepartureAirportID join Airports a2 on a2.ID = Routes.ArrivalAirportID join Aircrafts on Schedules.AircraftID = Aircrafts.ID ";
                string strCondition = StringHandle.GetConditionOfQuery(from, to, outbound, flightNumber);
                string strSort      = " order by " + sortBy[sortByIndex] + " desc";
                reader = execution.Reader(sql + strCondition + strSort);
                while (reader.Read())
                {
                    Schedule schedule = new Schedule();
                    schedule.ID           = (int)reader[0];
                    schedule.Date         = (DateTime)reader[1];
                    schedule.Time         = (TimeSpan)reader[2];
                    schedule.IATACodeFrom = reader[3] + "";
                    schedule.IATACodeTo   = reader[4] + "";
                    schedule.FlightNumber = reader[5] + "";
                    schedule.Aircraft     = reader[6] + "";
                    schedule.EconomyPrice = reader.GetSqlMoney(7).ToInt32();
                    schedule.Confirmed    = (bool)reader[8];
                    Schedules.Add(schedule);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                reader.Close();
            }
            return(Schedules);
        }