static void Main(string[] args) { var db = new HockeySignupDb(Settings1.Default.ConStr); Event e = new Event {Date = DateTime.Today.AddDays(3), MaxPeople = 20}; db.AddEvent(e); Console.WriteLine(e.Id); Console.ReadKey(true); }
public void AddEvent(Event e) { InitiateDbAction(cmd => { cmd.CommandText = "INSERT INTO Events (Date, MaxPeople) VALUES (@Date, @MaxPeople); SELECT @@Identity"; cmd.Parameters.AddWithValue("@Date", e.Date); cmd.Parameters.AddWithValue("@MaxPeople", e.MaxPeople); e.Id = (int)(decimal)cmd.ExecuteScalar(); }); }
public ActionResult CreateEvent(DateTime date, int maxPeople, bool sendEmail) { var db = new HockeySignupDb(_connectionString); Event e = new Event { Date = date, MaxPeople = maxPeople }; db.AddEvent(e); TempData["Message"] = "Event created successfuly, Id: " + e.Id; return RedirectToAction("Index", "Hockey"); }
public Event GetLatestEvent() { Event e = null; InitiateDbAction(cmd => { cmd.CommandText = "SELECT TOP 1 * FROM Events ORDER BY Id DESC"; var reader = cmd.ExecuteReader(); reader.Read(); e = new Event { Date = (DateTime)reader["Date"], Id = (int)reader["Id"], MaxPeople = (int)reader["MaxPeople"] }; }); return e; }
public Event GetEventById(int eventId) { Event e = null; InitiateDbAction(cmd => { cmd.CommandText = "SELECT * FROM Events WHERE Id = @id"; cmd.Parameters.AddWithValue("@id", eventId); var reader = cmd.ExecuteReader(); reader.Read(); e = new Event { Date = (DateTime)reader["Date"], Id = (int)reader["Id"], MaxPeople = (int)reader["MaxPeople"] }; }); return e; }
public IEnumerable<Event> GetEvents() { List<Event> events = new List<Event>(); InitiateDbAction(cmd => { cmd.CommandText = "SELECT * FROM Events ORDER BY Date DESC"; var reader = cmd.ExecuteReader(); while (reader.Read()) { var e = new Event { Date = (DateTime)reader["Date"], Id = (int)reader["Id"], MaxPeople = (int)reader["MaxPeople"] }; events.Add(e); } }); return events; }
public EventStatus GetEventStatus(Event e) { if (e.Date < DateTime.Today) { return EventStatus.InThePast; } int pplAmount = 0; InitiateDbAction(cmd => { cmd.CommandText = "SELECT COUNT(*) FROM EventSignups WHERE EventId = @eventId"; cmd.Parameters.AddWithValue("@eventId", e.Id); pplAmount = (int)cmd.ExecuteScalar(); }); if (pplAmount < e.MaxPeople) { return EventStatus.Open; } return EventStatus.Full; }