public async Task <IActionResult> Atualizar(Guid id, [FromBody] AtualizarUsuarios atualizarUsuario) { // recebo a requisição e passo a responsabilidade de fazer a lógica de adicionar para outra classe (Princípio da Responsabilidae única (SOLID)) // os metodos do controller não tem de ter muito código. basicamente uma linha que repassa a requisição pra outra classe fazer a trativa // e outra linha que retorna a reposta para o frontend try { atualizarUsuario.ObterId(id); await _usuarioUpdate.Atualizar(atualizarUsuario); return(NoContent()); } catch { return(NotFound()); } }
public async Task Atualizar(AtualizarUsuarios atualizarUsuario) { try { var usuario = await _appDbContext.Usuarios.FirstOrDefaultAsync(x => x.Id == atualizarUsuario.Id); _appDbContext.Entry(usuario).State = EntityState.Modified; _atualizacaoDoUsuario.AtualizarUsuario(usuario, atualizarUsuario); await Task.FromResult(_appDbContext.Set <Usuario>().Update(usuario)); await _appDbContext.SaveChangesAsync(); } catch (Exception) { throw; } }
public void AtualizarUsuario(Usuario usuario, AtualizarUsuarios atualizarUsuario) { usuario.AddNewUsuario(atualizarUsuario.Nome, atualizarUsuario.Ativo); }