private void DeleteHall() { Hall s = db.HallSet.Find(dgvList.SelectedRows[0].Cells[0].Value); if (!s.Deleted) { DialogResult dialogResult = MessageBox.Show("Зал будет помечен, как удаленный, пользователи не смогут его увидеть. Вы сможете вернуть его в любое время. Однако все сеансы будут удалены безвозвратно. Возможно, на них были куплены билеты! Вы действительно хотите удалить зал? ", "Удаление зала", MessageBoxButtons.YesNo); if (dialogResult == DialogResult.Yes) { HallWork.Delete(s.ID); } } else { if (!s.Cinema.Deleted) { DialogResult dialogResult = MessageBox.Show("Зал будет восстановлен. Пользователи смогут его увидеть. Вы уверены, что хотите восстановить зал?", "Восстановление зала", MessageBoxButtons.YesNo); if (dialogResult == DialogResult.Yes) { HallWork.Restore(s.ID); } } else { MessageBox.Show("Зал не может быть восстановлен, так как удален кинотеатр. Сначала восстановите кинотеатр!"); } } db.SaveChanges(); UpdateHall(); Information(); }
/// <summary> /// Восстановление кинотеатра /// </summary> /// <param name="ID"></param> public static void Restore(int ID) { foreach (Hall x in (db.CinemaSet.Find(ID)).Hall) {//восстанавливаем все кинотеатры данного фильма HallWork.Restore(x.ID); } db.CinemaSet.Find((db.CinemaSet.Find(ID)).ID).Deleted = false; db.SaveChanges(); }