public async Task <IRespostaDeCadastroDeUnidade> CadastraUnidade(ISolicitacaoDeCadastroDeUnidade solicitacao) { await unitOfWork.BeginTransaction(); try { var unidade = new UnidadeDeMedida( solicitacao.Sigla, solicitacao.NomeNoSingular, solicitacao.NomeNoPlural ); // await repositorioDeUnidades.Add(unidade); // await unitOfWork.Commit(); // return(new RespostaDeCadastroDeUnidadeDeMedida { Sigla = solicitacao.Sigla, }); } catch (Exception e) { await unitOfWork.Rollback(); throw; } }
public async Task Update(UnidadeDeMedida unidadeDeMedida) { try { await db.SaveChangesAsync(); } catch (Exception) { // TODO: Tratar erros de persistência aqui. throw new ApplicationException(); } }
public async Task Remove(UnidadeDeMedida unidadeDeMedida) { try { db.Unidades.Remove(unidadeDeMedida); await db.SaveChangesAsync(); } catch (Exception ex) { // TODO: Tratar erros de persistência aqui. throw new ApplicationException($"Erro ao excluir unidade de medida '{unidadeDeMedida.Sigla}'.", ex); } }