public void Save(Pessoa pessoa) { ErrorMessage = string.Empty; if (pessoa == null) { ErrorMessage = "NULL Entity"; return; } Conexao.Open(); Transacao = Conexao.BeginTransaction(); try { Db.Pessoa.AddOrUpdate(pessoa); Db.SaveChanges(); Transacao.Commit(); } catch (Exception ex) { ErrorMessage = ex.Message; Transacao.Rollback(); } Conexao.Close(); }
public void Save(Pessoa pessoa) { ErrorMessage = string.Empty; if (pessoa == null) { ErrorMessage = "Pessoa não carregada"; return; } Conexao.Open(); Transacao = Conexao.BeginTransaction(); try { Db.Pessoas.AddOrUpdate(pessoa); Db.SaveChanges(); Transacao.Commit(); } catch (Exception ex) { ErrorMessage = "Erro ao Cadastrar"; Transacao.Rollback(); } Conexao.Close(); }
//=============================================================================================== /// <summary> /// Executa queries INSERT, UPDATE, DELETE, CREATE TABLE, CREATE DATABASE /// </summary> /// <param name="query"></param> /// <param name="parametros"></param> public void EXE_NON_QUERY(string query, List <SQLParametro> parametros = null) { using (Conexao = new MySqlConnection(Str_Conn)) { try { Conexao.Open(); Transacao = Conexao.BeginTransaction(); //using (Cmd = new MySqlCommand(query, Conexao)) using (Cmd = new MySqlCommand(query, Conexao, Transacao)) Cmd.Parameters.Clear(); //Efetuando a limpeza caso haja parametros. //verifica se parametros é diferente de Null, ou seja, se tem dados, assim ele add aos parametros do COMANDO if (parametros != null) { foreach (SQLParametro p in parametros) { Cmd.Parameters.AddWithValue(p.Parametro, p.Valor); } } /* * O DANILO(TORNA-SE UM PROGRAMADOR) fez algo do tipo: * pedido.clienteID = Convert.toINT32(cmd.ExecuteScalar()) - ->Aqui ele capturou o id a ser salvo(Commit não executado ainda) * * https://www.youtube.com/watch?v=dt1u_UUH4Ro * * RESOLVER ESSE TRECHO AQUI PARA QUE RETORNE O ID INSERIDO OU ID REFERENTE A ALTERAÇÃO * * var linhaafetada = cmd.ExecuteNonQuery(); * if (linhaafetada > 0) * { * cmd.CommandText = "SELECT @@IDENTITY"; * DTO.EstadoId = Convert.ToInt16(cmd.ExecuteScalar()); * } */ Cmd.ExecuteNonQuery(); //=================== Transacao.Commit(); parametros[0].Valor = Cmd.LastInsertedId; //=================== } catch (SqlException exSQL) { Transacao.Rollback(); MessageBox.Show("Erro-SQL: " + exSQL.Message); } catch (Exception ex) { Transacao.Rollback(); MessageBox.Show("Erro: " + ex.Message); } } }
protected object ExecutarScalar(string command) { try { Conexao = MyDatabase.CreateConnection(); Conexao.Open(); if (UsarTransacao) { Transacao = Conexao.BeginTransaction(); } MyCommand = MyDatabase.GetStoredProcCommand(command); VincularParametros(); MyCommand.Connection = Conexao; var retorno = MyCommand.ExecuteScalar(); if (UsarTransacao) { Transacao.Commit(); } return(retorno); } catch (Exception e) { if (UsarTransacao) { Transacao.Rollback(); } if (!UsarException) { return(null); } throw new Exception(e.Message); } finally { if (MyCommand != null) { MyCommand.Dispose(); } if (Conexao != null) { Conexao.Dispose(); Conexao.Close(); } } }
protected void Executar(string command, CommandType commandType) { try { Conexao = MyDatabase.CreateConnection(); Conexao.Open(); if (UsarTransacao) { Transacao = Conexao.BeginTransaction(); } MyCommand = (commandType == CommandType.StoredProcedure) ? MyDatabase.GetStoredProcCommand(command) : MyDatabase.GetSqlStringCommand(command); VincularParametros(); MyCommand.Connection = Conexao; MyCommand.ExecuteNonQuery(); if (UsarTransacao) { Transacao.Commit(); } } catch (SqlException sq) { if (UsarTransacao) { Transacao.Rollback(); } throw new Exception(sq.Message); } finally { if (MyCommand != null) { MyCommand.Dispose(); } if (Conexao != null) { Conexao.Dispose(); Conexao.Close(); } } }
protected int ExecutarAtualizacao(string sql, Dictionary <string, object> parametros = null, bool carregarId = true) { int id = 0; using (Conexao) { using (Comando) { Conexao.ConnectionString = ConexaoDBFactory.ObterStringDeConexao(Tipo).ConnectionString; Comando.Parameters.Clear(); Comando.Connection = Conexao; Comando.CommandText = sql.FormatarSQL(Tipo, carregarId); Conexao.Open(); Transacao = Conexao.BeginTransaction(); Comando.Transaction = Transacao; Comando.AdicionarParametros(parametros); try { if (carregarId) { id = Convert.ToInt32(Comando.ExecuteScalar()); } else { Comando.ExecuteNonQuery(); } Transacao.Commit(); } catch (Exception e) { Transacao.Rollback(); throw e; } } } return(id); }
public void Delete(Pessoa pessoa) { ErrorMessage = string.Empty; if (pessoa == null) { ErrorMessage = "NULL Entity"; return; } Conexao.Open(); Transacao = Conexao.BeginTransaction(); try { Pessoa p = GetById(pessoa.PessoaId); if (p == null) { return; } if (Db.Entry(pessoa).State == EntityState.Detached) { Db.Entry(p).State = EntityState.Modified; } Db.Pessoa.Remove(p); Db.SaveChanges(); Transacao.Commit(); } catch (Exception ex) { ErrorMessage = ex.Message; Transacao.Rollback(); } Conexao.Close(); }