// Метод добавляет участников нового мероприятия в таблицу Members private static void WriteEventMember(int[] array, int eventId) { using (LdapDbContext db = new LdapDbContext()) { for (int i = 0; i < array.Length; i++) { Member newEvent = new Member { EventId = eventId, UserId = array[i], }; db.Members.Add(newEvent); db.SaveChanges(); } } }
// Метод для удаления события из БД public void DeleteEvent(int eventId) { using (LdapDbContext db = new LdapDbContext()) { Event item = db.Events .FirstOrDefault(o => o.Id == eventId); if (item == null) { throw new ArgumentException("Переданный параметр eventId не существует"); } db.Events.Remove(item); db.SaveChanges(); } }
// Метод записывает новое мероприятие в БД public void WriteToDatabase(string title, DateTime startTime, DateTime endTime, string descriptionEvent, string color, int userId, int roomId, int[] memberList) { if (title == null || title.IsEmpty()) { throw new ArgumentException("Наименование события не указано", "descriptionEvent"); } if (startTime == default(DateTime)) { throw new ArgumentException("Не указано \"Начало события\"", "startTime"); } if (endTime == default(DateTime)) { throw new ArgumentException("Не указано\"Конец события\"", "endTime"); } if (userId == 0) { throw new ArgumentException("Похоже, что вы не авторизованы", "userId"); } using (LdapDbContext db = new LdapDbContext()) { Event newEvent = new Event { Title = title, StartTime = startTime, EndTime = endTime, Description = descriptionEvent, Color = color, UserId = userId, RoomId = roomId }; db.Events.Add(newEvent); db.SaveChanges(); if (memberList != null) { WriteEventMember(memberList, newEvent.Id); } } }