コード例 #1
0
 public virtual void Delete(TEntity entityToDelete)
 {
     if (Context.Entry(entityToDelete).State == EntityState.Detached)
     {
         DBSet.Attach(entityToDelete);
     }
     DBSet.Remove(entityToDelete);
 }
コード例 #2
0
        public virtual void Update(T entity)
        {
            DbEntityEntry entry = Context.Entry(entity);

            if (entry.State == EntityState.Detached)
            {
                DBSet.Attach(entity);
            }

            entry.State = EntityState.Modified;
        }
コード例 #3
0
        public void Update(T entity)
        {
            DbEntityEntry entry = Context.Entry(entity);

            if (entry.State == EntityState.Detached)
            {
                DBSet.Attach(entity);
            }

            entry.State = EntityState.Modified;
            Context.SaveChanges();
        }
コード例 #4
0
        public virtual Task Delete(TEntity entity)
        {
            if (entity == null)
            {
                throw new ArgumentNullException("entity");
            }

            DBSet.Attach(entity);

            DBSet.Remove(entity);

            return(Context.SaveChangesAsync());
        }
コード例 #5
0
    public async Task Update(T entity)
    {
        EntityEntry dbEntity = Context.Entry(entity);

        if (dbEntity.State == EntityState.Detached)
        {
            DBSet.Attach(entity);
        }
        dbEntity.State = EntityState.Modified;
        await Task.Run(() => {
            DBSet.Update(entity);
        });
    }
コード例 #6
0
        public virtual void Delete(T entity)
        {
            DbEntityEntry entry = Context.Entry(entity);

            if (entry.State != EntityState.Deleted)
            {
                entry.State = EntityState.Deleted;
            }
            else
            {
                DBSet.Attach(entity);
                DBSet.Remove(entity);
            }
        }
コード例 #7
0
    public async Task Delete(T entity)
    {
        EntityEntry dbEntity = Context.Entry(entity);

        if (dbEntity.State != EntityState.Deleted)
        {
            dbEntity.State = EntityState.Deleted;
        }
        else
        {
            await Task.Run(() => {
                DBSet.Attach(entity);
                DBSet.Remove(entity);
            });
        }
    }
コード例 #8
0
 public async Task Delete(ICollection <T> entities)
 {
     foreach (var obj in entities)
     {
         EntityEntry dbEntity = Context.Entry(obj);
         if (dbEntity.State != EntityState.Deleted)
         {
             dbEntity.State = EntityState.Deleted;
         }
         else
         {
             DBSet.Attach(obj);
         }
     }
     await Task.Run(() => {
         DBSet.RemoveRange(entities);
     });
 }
コード例 #9
0
        public override void Atualizar(Candidato dto)
        {
            try
            {
                Candidato candidato_db = DBSet
                                         .Include(h => h.lstCandidatoDisponibilidadeHoras)
                                         .Include(p => p.lstCandidatoDisponibilidadePeriodo)
                                         .Include(l => l.lstCandidatoLinguagem)
                                         .FirstOrDefault(c => c.Id == dto.Id);

                candidato_db.lstCandidatoDisponibilidadePeriodo.RemoveAll(p => p.DisponibilidadePeriodoId > 0);

                candidato_db.lstCandidatoDisponibilidadeHoras.RemoveAll(p => p.DisponibilidadeHorasId > 0);

                candidato_db.lstCandidatoLinguagem.RemoveAll(p => p.LinguagemId > 0);

                candidato_db.Id         = dto.Id;
                candidato_db.email      = dto.email;
                candidato_db.nome       = dto.nome;
                candidato_db.telefone   = dto.telefone;
                candidato_db.skype      = dto.skype;
                candidato_db.cidade     = dto.cidade;
                candidato_db.uf         = dto.uf;
                candidato_db.portifolio = dto.portifolio;
                candidato_db.pretencao_salarial_hora = dto.pretencao_salarial_hora;
                candidato_db.linkedin    = dto.linkedin;
                candidato_db.nota_outros = dto.nota_outros;
                candidato_db.link_crud   = dto.link_crud;

                candidato_db.lstCandidatoDisponibilidadePeriodo = dto.lstCandidatoDisponibilidadePeriodo.FindAll(p => p.DisponibilidadePeriodoId > 0);

                candidato_db.lstCandidatoDisponibilidadeHoras = dto.lstCandidatoDisponibilidadeHoras.FindAll(p => p.DisponibilidadeHorasId > 0);

                candidato_db.lstCandidatoLinguagem = dto.lstCandidatoLinguagem.FindAll(p => p.LinguagemId > 0);

                DBSet.Attach(candidato_db).State = EntityState.Modified;
            }
            catch (Exception ex)
            {
                throw new Exception(ex?.InnerException?.Message ?? ex?.Message);
            }
        }