/// <summary> /// Retorna um tipo VERDADEIRO caso a instrução seja bem sucedida. /// </summary> public bool Delete(int id) { DbConnection connection = null; bool transactionstart = false; try { using (connection = db.CreateConnection()) { connection.Open(); if (Transaction == null) { Transaction = connection.BeginTransaction(IsolationLevel.ReadCommitted); transactionstart = true; } dbCommand = db.GetSqlStringCommand(" DELETE FROM " + "public" + ".orcamento" + " WHERE" + " id = @id;"); db.AddInParameter(dbCommand, "@id", DbType.Int32, id); db.ExecuteNonQuery(dbCommand, Transaction); if (transactionstart) { Transaction.Commit(); Transaction = null; } connection.Close(); LancamentoProdutoServicoDAO lancamentoProdServDAO = new LancamentoProdutoServicoDAO(); lancamentoProdServDAO.DeleteOrcamento(id); return(true); } } catch { if (transactionstart) { if (Transaction.Connection.State == ConnectionState.Open) { Transaction.Rollback(); } Transaction = null; } if (connection.State == ConnectionState.Open) { connection.Close(); } throw; } }
private void PersisteListas(OrcamentoDTO orcamento, int id_orcamento) { LancamentoProdutoServicoDAO lancamentoProdServDAO = new LancamentoProdutoServicoDAO(); List <LancamentoProdutoServicoDTO> items = new List <LancamentoProdutoServicoDTO>(); items.AddRange(orcamento.Produtoservico); if (lancamentoProdServDAO.DeleteOrcamento(id_orcamento)) { foreach (LancamentoProdutoServicoDTO orcamentoitem in items) { orcamentoitem.Id_orcamento = id_orcamento; lancamentoProdServDAO.Insert(orcamentoitem); } } }