private static List <GroupSchedule> GetSchedules(int group, bool?access, DayOfWeek?day_week) { var listSchedule = new List <GroupSchedule>(); StringBuilder cmdQuery = new StringBuilder(); cmdQuery.Append(SelectCmd); if (access.HasValue) { cmdQuery.Append(" AND Access=?"); } if (day_week.HasValue) { switch (day_week.Value) { case DayOfWeek.Monday: cmdQuery.Append(" AND Mondays=1"); break; case DayOfWeek.Tuesday: cmdQuery.Append(" AND Tuesdays=1"); break; case DayOfWeek.Wednesday: cmdQuery.Append(" AND Wednesdays=1"); break; case DayOfWeek.Thursday: cmdQuery.Append(" AND Thursdays=1"); break; case DayOfWeek.Friday: cmdQuery.Append(" AND Fridays=1"); break; case DayOfWeek.Saturday: cmdQuery.Append(" AND Saturdays=1"); break; case DayOfWeek.Sunday: cmdQuery.Append(" AND Sundays=1"); break; } } using (var con = new OdbcConnection(ConnString)) using (var cmd = new OdbcCommand(cmdQuery.ToString(), con)) { cmd.Parameters.AddWithValue("GroupID", group); if (access.HasValue) { cmd.Parameters.AddWithValue("Access", access.Value); } try { con.Open(); using (var db = cmd.ExecuteReader()) { while (db.Read()) { DateTime?date_from; if (Convert.IsDBNull(db["DateFrom"])) { date_from = null; } else { date_from = (DateTime)db["DateFrom"]; } DateTime?date_to; if (Convert.IsDBNull(db["DateTo"])) { date_to = null; } else { date_to = (DateTime)db["DateTo"]; } TimeSpan?time_from; if (Convert.IsDBNull(db["TimeFrom"])) { time_from = null; } else if (db["TimeFrom"] is TimeSpan) { time_from = (TimeSpan)db["TimeFrom"]; } else { time_from = null; } TimeSpan?time_to; if (Convert.IsDBNull(db["TimeTo"])) { time_to = null; } else if (db["TimeTo"] is TimeSpan) { time_to = (TimeSpan)db["TimeTo"]; } else { time_to = null; } var schedule = new GroupSchedule(Convert.ToInt32(db["GroupID"]), db["Name"].ToString(), Convert.ToBoolean(db["Access"]), date_from, date_to, time_from, time_to, Convert.ToBoolean(db["Mondays"]), Convert.ToBoolean(db["Tuesdays"]), Convert.ToBoolean(db["Wednesdays"]), Convert.ToBoolean(db["Thursdays"]), Convert.ToBoolean(db["Fridays"]), Convert.ToBoolean(db["Saturdays"]), Convert.ToBoolean(db["Sundays"])); listSchedule.Add(schedule); } } } catch { } } return(listSchedule); }
public static void UpdateSchedule(GroupSchedule schedule) { using (var con = new OdbcConnection(ConnString)) using (var cmd = new OdbcCommand(UpdateCmd, con)) { cmd.Parameters.AddWithValue("Name", schedule.Name); cmd.Parameters.AddWithValue("Access", schedule.Access); if (schedule.DateFrom.HasValue) { cmd.Parameters.AddWithValue("DateFrom", schedule.DateFrom.Value); } else { cmd.Parameters.AddWithValue("DateFrom", null); } if (schedule.DateTo.HasValue) { cmd.Parameters.AddWithValue("DateTo", schedule.DateTo.Value); } else { cmd.Parameters.AddWithValue("DateTo", null); } if (schedule.TimeFrom.HasValue) { cmd.Parameters.AddWithValue("TimeFrom", schedule.TimeFrom.Value); } else { cmd.Parameters.AddWithValue("TimeFrom", null); } if (schedule.TimeTo.HasValue) { cmd.Parameters.AddWithValue("TimeTo", schedule.TimeTo.Value); } else { cmd.Parameters.AddWithValue("TimeTo", null); } cmd.Parameters.AddWithValue("Mondays", schedule.Mondays); cmd.Parameters.AddWithValue("Tuesdays", schedule.Tuesdays); cmd.Parameters.AddWithValue("Wednesdays", schedule.Wednesdays); cmd.Parameters.AddWithValue("Thursdays", schedule.Thursdays); cmd.Parameters.AddWithValue("Fridays", schedule.Fridays); cmd.Parameters.AddWithValue("Saturdays", schedule.Saturdays); cmd.Parameters.AddWithValue("Sundays", schedule.Sundays); cmd.Parameters.AddWithValue("GroupID", schedule.GroupID); try { con.Open(); cmd.ExecuteNonQuery(); } catch { } } }