public void Apagar() { SqlConnection sqlConnection = new SqlConnection(Properties.Settings.Default.connectionString); SqlCommand apagarReceitaCommand = new SqlCommand(); SqlTransaction transaction; apagarReceitaCommand.Connection = sqlConnection; apagarReceitaCommand.CommandType = System.Data.CommandType.StoredProcedure; apagarReceitaCommand.CommandText = "dbo.ApagarReceita"; apagarReceitaCommand.Parameters.AddWithValue("@ReceitaID", this.ReceitaID); try { sqlConnection.Open(); transaction = apagarReceitaCommand.Connection.BeginTransaction("ApagarReceita"); try { LinhaIngrediente.ApagarIngredientesDeLaReceta(this.ReceitaID, sqlConnection, transaction); // entre los ( ) estamos pasando el valor de receita ID del objeto receta que ejecuta la funcion actualizar // esta linea viene de un metodo statico que hicimos en la clase lineingrediente apagarReceitaCommand.Transaction = transaction; apagarReceitaCommand.ExecuteNonQuery(); transaction.Commit(); sqlConnection.Close(); } catch { transaction.Rollback(); } } catch (Exception) { } }
public void Atualizar() { SqlConnection sqlConnection = new SqlConnection(Properties.Settings.Default.connectionString); //Ejecutar AtualizarReceita SqlCommand atualizarReceitaCommand = new SqlCommand(); SqlTransaction transaction; atualizarReceitaCommand.Connection = sqlConnection; atualizarReceitaCommand.CommandType = System.Data.CommandType.StoredProcedure; atualizarReceitaCommand.CommandText = "dbo.AtualizarReceita"; atualizarReceitaCommand.Parameters.AddWithValue("@ReceitaID", this.ReceitaID); atualizarReceitaCommand.Parameters.AddWithValue("@UserID", this.UserID); atualizarReceitaCommand.Parameters.AddWithValue("@CategoriaID", this.Categoria.CategoriaID); atualizarReceitaCommand.Parameters.AddWithValue("@Nome", this.Nome); atualizarReceitaCommand.Parameters.AddWithValue("@Descripcao", this.Descripcao); atualizarReceitaCommand.Parameters.AddWithValue("@QuantidadComensales", this.QuantidadeComensales); atualizarReceitaCommand.Parameters.AddWithValue("@DificuldadeID", this.Dificuldade.DificuldadeID); atualizarReceitaCommand.Parameters.AddWithValue("@Status", this.Status); atualizarReceitaCommand.Parameters.AddWithValue("@Duracao", this.Duracao); try { sqlConnection.Open(); transaction = atualizarReceitaCommand.Connection.BeginTransaction("AtualizarReceita"); try { // Descarta (elimina) la lista antigua de ingredientes guardados en la base de datos LinhaIngrediente.ApagarIngredientesDeLaReceta(this.ReceitaID, sqlConnection, transaction); // entre los ( ) estamos pasando el valor de receita ID del objeto receta que ejecuta la funcion actualizar // esta linea viene de un metodo statico que hicimos en la clase lineingrediente // Actualiza solo la tabla Receita atualizarReceitaCommand.Transaction = transaction; atualizarReceitaCommand.ExecuteNonQuery(); // Inserta nuevos registros en la tabla LinhaIngrediente foreach (LinhaIngrediente item in this.IngredientesReceita) { item.Inserir(sqlConnection, transaction); } transaction.Commit(); sqlConnection.Close(); } catch { transaction.Rollback(); } } catch { } }