public int AddEmployee(Employee_dto employee, string connectionString)
        {
            try
            {
                using (var db = TestDBEntities.FactoryMethod(connectionString))
                {
                    var entity = mapper.Map <Employee>(employee);
                    db.Set <Employee>().Add(entity);
                    db.SaveChanges();

                    _loger.Info("Добавлен сотрудник " + entity.ID + " в подразделение " + employee.DepartmentID + ". Строка подключения: " + db.Database.Connection.ConnectionString);
                    return(entity.ID);
                }
            }
            catch (DataException ex)
            {
                _loger.Warn(ex, "Проблема добавления сотрудника " + employee.ToJson());
                var fault = GetExceptionMessage(ex);
                throw new FaultException <DefaultFault>(fault);
            }
            catch (Exception ex)
            {
                _loger.Error(ex, "Во время добавления сотрудника что-то пошло совсем не так.");
                throw;
            }
        }
        public void DeleteEmployee(Employee_dto employee, string connectionString)
        {
            try
            {
                using (var db = TestDBEntities.FactoryMethod(connectionString))
                {
                    var entity = mapper.Map <Employee>(employee);

                    db.Set <Employee>().Attach(entity);
                    var t = db.Set <Employee>().Remove(entity);
                    db.SaveChanges();

                    _loger.Info("Удален сотрудник " + employee.ToJson() + ". Строка подключения: " + db.Database.Connection.ConnectionString);;
                }
            }
            catch (DataException ex)
            {
                _loger.Warn(ex, "Проблема удаления сотрудника " + employee.ToJson());
                var fault = GetExceptionMessage(ex);
                throw new FaultException <DefaultFault>(fault);
            }
            catch (Exception ex)
            {
                _loger.Error(ex, "Во время удаления сотрудника что-то пошло совсем не так.");
                throw;
            }
        }
        public void EditEmployee(Employee_dto employee, string connectionString)
        {
            try
            {
                using (var db = TestDBEntities.FactoryMethod(connectionString))
                {
                    var entity = mapper.Map <Employee>(employee);

                    var originalEntity = db.Set <Employee>().Where(el => el.ID == entity.ID).SingleOrDefault();
                    if (originalEntity == null)
                    {
                        throw new InvalidOperationException("Record is not found in storage");
                    }

                    db.Entry(originalEntity).CurrentValues.SetValues(entity);
                    db.SaveChanges();

                    _loger.Info("Отредактирован сотрудник " + employee.ID + ". Строка подключения: " + db.Database.Connection.ConnectionString);
                }
            }
            catch (DataException ex)
            {
                _loger.Warn(ex, "Проблема редактирования сотрудника " + employee.ToJson());
                var fault = GetExceptionMessage(ex);
                throw new FaultException <DefaultFault>(fault);
            }
            catch (Exception ex)
            {
                _loger.Error(ex, "Во время редактирования сотрудника что-то пошло совсем не так.");
                throw;
            }
        }
 public int RemoveEmployee(Employee_dto employee)
 {
     throw new NotImplementedException("Нельзя ничего удалять из бд");
     using (var db = new TestDBEntities())
     {
         var entity = mapper.Map <Employee>(employee);
         db.Set <Employee>().Remove(entity);
         db.SaveChanges();
         return(entity.ID);
     }
 }
Beispiel #5
0
 public void DeleteEmployee(Employee_dto employee, string connectionString)
 {
     _logic.DeleteEmployee(employee, connectionString);
 }
Beispiel #6
0
 public void EditEmployee(Employee_dto employee, string connectionString)
 {
     _logic.EditEmployee(employee, connectionString);
 }
Beispiel #7
0
 public int AddEmployee(Employee_dto employee, string connectionString)
 {
     return(_logic.AddEmployee(employee, connectionString));
 }