/// <summary>
 /// Удаление основания зачисления
 /// </summary>
 /// <param name="reasonForAddmission">Удаляемая запись</param>
 public void DeleteReasonForAddmission(ReasonForAddmission reasonForAddmission)
 {
     logger.Trace("Попытка подключения к источнику данных.");
     logger.Trace("Подготовка к удалению основания зачисления.");
     try
     {
         var reasonForAddmissionToDelete = context.ReasonForAddmission.FirstOrDefault(r => r.ReasonForAddmissionId == reasonForAddmission.ReasonForAddmissionId);
         if (reasonForAddmissionToDelete != null)
         {
             context.ReasonForAddmission.Remove(reasonForAddmissionToDelete);
             context.SaveChanges();
             logger.Debug("Удаление записи основания зачисления успешно завершено.");
         }
     }
     catch (SqlException sqlEx)
     {
         logger.Error("Ошибка удаления записи основания зачисления.");
         logger.Error($"Ошибка SQL Server — {sqlEx.Number}.");
         logger.Error($"Сообщение об ошибке: {sqlEx.Message}.");
     }
     catch (Exception ex)
     {
         logger.Error("Ошибка удаления записи основания зачисления.");
         logger.Error($"Ошибка — {ex.Message}.");
     }
 }
 /// <summary>
 /// Добавление основания зачисления
 /// </summary>
 /// <param name="reasonForAddmission">Новое основание зачисления</param>
 /// <returns>Новая запись</returns>
 public ReasonForAddmission InsertReasonForAddmission(ReasonForAddmission reasonForAddmission)
 {
     logger.Trace("Попытка подключения к источнику данных.");
     logger.Trace("Подготовка к добавлению основания зачисления");
     try
     {
         logger.Debug($"Добавляемая запись {reasonForAddmission.ToString()}");
         context.ReasonForAddmission.Add(reasonForAddmission);
         context.SaveChanges();
         logger.Debug($"Новая запись успешно добавлена.");
         return(reasonForAddmission);
     }
     catch (SqlException sqlEx)
     {
         logger.Error("Ошибка добавления основания зачисления.");
         logger.Error($"Ошибка SQL Server — {sqlEx.Number}.");
         logger.Error($"Сообщение об ошибке: {sqlEx.Message}.");
         return(null);
     }
     catch (Exception ex)
     {
         logger.Error("Ошибка добавления основания зачисления.");
         logger.Error($"Ошибка — {ex.Message}.");
         return(null);
     }
 }
 /// <summary>
 /// Обновление основания зачисления
 /// </summary>
 /// <param name="reasonForAddmission">Редактируемая запись</param>
 /// <returns>Отредактированная запись</returns>
 public ReasonForAddmission UpdateReasonForAddmission(ReasonForAddmission reasonForAddmission)
 {
     logger.Trace("Попытка подключения к источнику данных.");
     logger.Trace("Подготовка к обновлению основания зачисления.");
     try
     {
         var reasonForAddmissionToUpdate = context.ReasonForAddmission.FirstOrDefault(r => r.ReasonForAddmissionId == reasonForAddmission.ReasonForAddmissionId);
         logger.Debug($"Текущая запись {reasonForAddmissionToUpdate.ToString()}");
         reasonForAddmissionToUpdate.ContestId = reasonForAddmission.ContestId;
         reasonForAddmissionToUpdate.Fullname  = reasonForAddmission.Fullname;
         reasonForAddmissionToUpdate.Shortname = reasonForAddmission.Shortname;
         context.SaveChanges();
         logger.Debug($"Новая запись {reasonForAddmissionToUpdate.ToString()}");
         return(reasonForAddmissionToUpdate);
     }
     catch (SqlException sqlEx)
     {
         logger.Error("Ошибка редактирования основания зачисления.");
         logger.Error($"Ошибка SQL Server — {sqlEx.Number}.");
         logger.Error($"Сообщение об ошибке: {sqlEx.Message}.");
         return(null);
     }
     catch (Exception ex)
     {
         logger.Error("Ошибка редактирования основания зачисления.");
         logger.Error($"Ошибка — {ex.Message}.");
         return(null);
     }
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Получение списка абитуриентов
 /// </summary>
 /// <param name="reasonForAddmission">Основание зачисления</param>
 /// <returns>Список абитуриентов</returns>
 public List <Enrollee> GetEnrollees(ReasonForAddmission reasonForAddmission)
 {
     logger.Trace("Попытка подключения к источнику данных.");
     logger.Trace("Подготовка к поиску списка абитуриентов выбранного основания зачисления.");
     try
     {
         var enrollees = context.Enrollee.AsNoTracking().Where(e => e.ReasonForAddmissionId == reasonForAddmission.ReasonForAddmissionId).ToList();
         logger.Debug($"Поиск окончен. Количество записей: {enrollees.Count}.");
         return(enrollees);
     }
     catch (SqlException sqlEx)
     {
         logger.Error("Ошибка получения списка абитуриентов, по типу основания зачисления.");
         logger.Error($"Ошибка SQL Server — {sqlEx.Number}.");
         logger.Error($"Сообщение об ошибке: {sqlEx.Message}.");
         return(null);
     }
     catch (Exception ex)
     {
         logger.Error("Ошибка получения списка абитуриентов, по типу основания зачисления.");
         logger.Error($"Ошибка — {ex.Message}.");
         return(null);
     }
 }